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

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

第二章、SQL和操作符

2.1、学习目标

理解SQL及其作用,了解数据定义语言和数据操作语言,掌握SQL操作符的使用,以及何时、如何使用SQL。


2.2、SQL概述

SQL(Structured Query Language,结构化查询语言)是Oracle使用的标准数据库语言,主要用于存储和检索数据。SQL允许用户向Oracle服务器发送查询指令,实现与数据库的通信。

SQL的主要功能包括数据的存储、检索、定义和管理,通过SQL操作数据库中的表(如部门表和员工表),实现与数据库的连接和数据操作。


2.3、SQL操作语言分类

SQL操作语言可按不同功能分类如下:

  • DML(数据操作语言):负责数据的插入、更新、删除等操作,包括SELECT、INSERT、DELETE、UPDATE等语句。
  • DCL(数据库控制语言):负责数据库的安全管理,如权限授予和撤销,包括GRANT、REVOKE等操作。
  • DDL(数据库定义语言):负责数据库结构的定义与修改,如表的创建、删除及字段的增删改,包括CREATE TABLE、DROP TABLE、ALTER TABLE等语句。
  • TCL(事务控制语言):负责事务的管理,确保数据库操作的原子性、一致性和持久性,包括COMMIT、ROLLBACK、SAVEPOINT等操作。

2.4、SQL操作符概述

SQL操作符可以分为以下几类:

  • 算术操作符:

    • 加(+)
    • 减(-)
    • 乘(*)
    • 除(/)
    • 通常用于数值计算,例如3 + 5 = 8。
  • 连接操作符:

    • 用于将字符串或数据值合并成一个字符串,常用于文本拼接操作,例如CONCAT(``(A名), (B名))`。
  • 比较操作符:

    • 等于(=)
    • 不等于(<!=>)
    • 小于(<)
    • 大于(>)
    • 小于等于(<=)
    • 大于等于(>=)
    • BETWEEN和..., 用于范围查询。
    • IN,用于列举值的查询。
    • LIKE,用于模式匹配查询。
    • IS NULL,用于判断是否为空。
  • 逻辑操作符:

    • 与(AND)
    • 或(OR)
    • 非(NOT)
    • 用于构建复杂逻辑表达式。

  • 实例操作说明

    • 创建部门表:

      CREATE TABLE Dept (  deptid VARCHAR2(20) NOT NULL,  deptname VARCHAR2(30) NOT NULL,  deptdesc VARCHAR2(100),  deptcdate DATE);
    • 删除表:

      DROP TABLE Dept;
    • 添加主键约束:

      ALTER TABLE Dept ADD CONSTRAINT pk_dept_deptid PRIMARY KEY (deptid);
    • 创建员工表:

      CREATE TABLE Employee (  empid VARCHAR2(20) NOT NULL,  empname VARCHAR2(20) NOT NULL,  sex CHAR(3) CHECK (sex = '男' OR sex = '女'),  age NUMBER(3),  deptid VARCHAR2(20) REFERENCES Dept(deptid));
    • 添加外键约束(级联删除):

      ALTER TABLE Employee ADD CONSTRAINT fk_employee_deptid2 FOREIGN KEY (deptid) REFERENCES Dept(deptid) ON DELETE CASCADE;
    • 修改列属性:

      ALTER TABLE Employee MODIFY (empdesc VARCHAR2(30));
    • 修改列名:

      ALTER TABLE Employee RENAME COLUMN empdesc TO empdescription;

    级联删除(外键)

    在数据库中,外键约束可以设置以下四种行为:

  • No action(默认行为):无法直接删除主表中的数据(如果从表中存在关联数据)。
  • Cascade: 删除主表中数据时,自动删除所有相关的从表记录。
  • Set null: 删除主表中的数据,只将从表中的外键列设置为空,不会删除相关记录。
  • 删除主表,保留数据: 不删除主表中的数据,也不会对从表产生任何影响。
  • 转载地址:http://wauaz.baihongyu.com/

    你可能感兴趣的文章
    Python 基础语法:基本数据类型(一)
    查看>>
    python编程读取写入excel_Python读取txt内容写入xls格式excel中的方法
    查看>>
    Python 基础语法:基本数据类型(字典)
    查看>>
    Python 基础语法:基本数据类型(字符串)
    查看>>
    Python 基础语法:基本数据类型(集合)
    查看>>
    Python编程的终极十大工具
    查看>>
    python 堆排序
    查看>>
    python编程方式之一-函数式编程
    查看>>
    python 复习计划
    查看>>
    Python 多处理 apply_async 永远不会在 Windows 7 上返回结果
    查看>>
    Python 多处理 Numpy 随机
    查看>>
    Python 多处理 >= 125 列表永远不会完成
    查看>>
    Python 多处理:在第一个子错误时中止映射
    查看>>
    Python 多处理不断产生 pythonw.exe 进程而不做任何实际工作
    查看>>
    Python 多处理从不加入
    查看>>
    Python 多处理如何优雅地退出?
    查看>>
    Python 多处理将子进程的标准输出重定向到 Tkinter 文本
    查看>>
    Python 多处理库错误(AttributeError:__exit__)
    查看>>
    Python 多处理模块的 .join() 方法到底在做什么?
    查看>>
    python 多线程与GIL
    查看>>