博客
关于我
Oracle系列(二)、SQL和操作符
阅读量:646 次
发布时间:2019-03-13

本文共 2202 字,大约阅读时间需要 7 分钟。

第二章、SQL和操作符

2.1、学习目标

  • 理解SQL及其作用

  • 了解数据定义语言和数据操作语言

  • 了解事务控制语言和数据控制语言

  • 掌握 SQL 操作符

  • WHAT(SQL是什么?)

    ——Structured Query Language,结构化查询语言

  • WHY(为何要使用SQL**?****)**

    ——难道仅仅使用,PL/SQL Developer操作数据库?
    ——应用程序如何与数据库打交道

  • WHEN(何时使用?)

    ——对Oracle执行所有的操作都可以
    ——程序中的增删改查

  • HOW(怎么使用?)

    ——…

2.2、SQL概述

  • SQL是Structured Query Language(结构化查询语言)的首字母缩写词;
  • SQL是数据库语言,Oracle使用该语言存储和检索信息;
  • 表示主要的数据对象,用于存储数据;
  • 通过SQL可以实现与Oracle服务器的通信。
    在这里插入图片描述

2.3、SQL操作语言

  • DML(数据操作语言)
    ——查询、插入、删除和修改数据库中的数据
    ——SELECT、INSERT、DELETE、UPDATE等
  • DCL(数据库控制语言)
    ——用来控制存取许可、存储权限等
    ——GRANT、REVOKE等
  • DDL(数据库定义语言
    ——用来建立数据库、数据库对象和定义其列
    ——CREATE TABLE、DROP TAVLE、ALTER TABLE等
  • TCL(事务控制语言)
    ——COMMIT(提交并结束事务处理)、SAVEPOINT(标记事务中可以回滚的带点)、ROLLBACK(撤销事务中已经完成的工作)等

2.4、SQL操作符

  • 算出操作符
    1. 算数操作符用于执行数值计算;
    2. 可以在SQL语句中使用算数表达式,算数表达式由数值数据类型的列名、数值常量和连接他们的算数操作符组成;
    3. 算数操作符包括加(+)、减(-)、乘(*)、除(/)
  • 连接操作符
    连接操作符用于将多个字符串或数据值合并成一个字符串。
  • 比较操作符
    1. 比较操作符用于比较两个表达式的值;
    2. 比较操作符包括=、!=、<、>、<=、>=、between…and、in、like、is null等。
  • 逻辑操作符
    1. 逻辑操作符用于组合多个计较运算的结果以生成一个或真或假的结果;
    2. 逻辑操作符包括与(and)、或(or)、非(not)。

实例操作如下

--创建Dept部门表create table Dept( deptid varchar2(20),   --部门id deptname varchar2(30),  --部门名称 deptdesc varchar2(100), --部门描述 deptcdate date          --创建日期)--删除表drop table Dept;--alter table--添加主键alter table Dept add constraint pk_dept_deptid primary key(deptid);--创建员工表create table Employee(  empid varchar2(20),     --员工id  empname varchar2(20),   --员工姓名  sex char(3),            --性别(男,女)  age number(3),          --年龄  deptid varchar2(20)     --隶属部门(作为外键))--添加主键 primary keyalter table Employee add constraint pk_employee_empid primary key(empid);--添加检查约束(性别)check_sexalter table Employee add constraint ck_employee_sex check(sex = '男' or sex = '女');--添加约束 (年龄) check_agealter table Employee add constraint ck_employee_age check(age>=18 and age<=120);alter table Employee add constraint ck_employee_age check(age between 18 and 120);--添加外键约束 fk_deptidalter table Employee add constraint fk_employee_deptid2 foreign key(deptid) references Dept(deptid); --添加列alter table Employee add(empdesc);--修改列属性alter table Employee modify(empdesc varchar2(30));--修改列名alter table Employee rename column empsdesc to empdescription;

级联删除(外键)

–默认No action 不可直接删除主表中数据(已找到从表中关联数据)

–Cascade 删除主表中数据,连并一下把关联的从表中的数据全部删除
–Set null 删除主表中数据,只是单纯把从表中外键那一列设为空值了,并不会删除从表中关联的整行数据

转载地址:http://wauaz.baihongyu.com/

你可能感兴趣的文章
MSCRM调用外部JS文件
查看>>
MSCRM调用外部JS文件
查看>>
MSEdgeDriver (Chromium) 不适用于版本 >= 79.0.313 (Canary)
查看>>
MsEdgeTTS开源项目使用教程
查看>>
msf
查看>>
MSP430F149学习之路——SPI
查看>>
msp430入门编程45
查看>>
MSSQL数据库查询优化(一)
查看>>
MSSQL数据库迁移到Oracle(二)
查看>>
MSSQL日期格式转换函数(使用CONVERT)
查看>>
MSTP多生成树协议(第二课)
查看>>
MSTP是什么?有哪些专有名词?
查看>>
Mstsc 远程桌面链接 And 网络映射
查看>>
Myeclipse常用快捷键
查看>>
MyEclipse更改项目名web发布名字不改问题
查看>>
MyEclipse用(JDBC)连接SQL出现的问题~
查看>>
mt-datetime-picker type="date" 时间格式 bug
查看>>
myeclipse的新建severlet不见解决方法
查看>>
MyEclipse设置当前行背景颜色、选中单词前景色、背景色
查看>>
Mtab书签导航程序 LinkStore/getIcon SQL注入漏洞复现
查看>>