博客
关于我
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/

你可能感兴趣的文章
Mysql学习总结(85)——开发人员最应该明白的数据库设计原则
查看>>
Mysql学习总结(8)——MySql基本查询、连接查询、子查询、正则表达查询讲解
查看>>
Mysql学习总结(9)——MySql视图原理讲解与使用大全
查看>>
Mysql学习笔记 - 在Centos7环境下离线安装Mysql
查看>>
MySQL学习笔记十七:复制特性
查看>>
Mysql学习第一课-mysql的定义及sql语句
查看>>
mysql安全模式: sql_safe_updates
查看>>
mysql安装,卸载,连接
查看>>
MySQL安装之没有配置向导
查看>>
mysql安装出现 conflicts with mysql*的解决办法
查看>>
mysql安装卡在最后一步解决方案(附带万能安装方案)
查看>>
mysql安装和启动命令小结
查看>>
Mysql安装教程(命令行)
查看>>
mysql安装版安装
查看>>
MySQL安装配置教程(非常详细),从零基础入门到精通,看完这一篇就够了
查看>>
mysql安装配置简介
查看>>
MySQL定义和变量赋值
查看>>
mysql定时任务事件清理单表数据
查看>>
MySQL定时器Events
查看>>
Mysql定时备份脚本
查看>>