博客
关于我
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基础(2):控制结构
    查看>>
    Python基础 | 关于“循环”那些事
    查看>>
    python系列【仅供参考】:python之subprocess模块rsync拉取文件
    查看>>
    python系列【仅供参考】:python 远程rdp
    查看>>
    python基础
    查看>>
    Python基本语法与变量类型
    查看>>
    python基本数据类型(容器)- tuple list dict set
    查看>>
    python基本工资的调整方案_Python薪资又涨了!这可咋办!
    查看>>
    Python基准测试和性能分析内存管理和垃圾回收
    查看>>
    Python基于RESTful风格的接口自动化测试实战
    查看>>
    python基于pygame实现跨年烟花效果
    查看>>
    python基于flask搭建http服务(四)—— Docker容器化部署
    查看>>
    python基于flask搭建http服务(二)—— 实现Excel上传、数据清洗、入库
    查看>>
    python基于flask搭建http服务(三)—— 使用gunicorn部署项目
    查看>>
    python基于flask搭建http服务(一)—— 实现数据查询和Excel导出
    查看>>
    Python块键盘/鼠标输入
    查看>>
    python在心理学研究中的应用有哪些_心理学在线研究可用平台简介和应用进展
    查看>>
    python在使用HTMLTestRunner时,报告为空,错误提示<_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf_8'>...
    查看>>
    python在gpu上运行_【python】python开启GPU加速
    查看>>