03 | 关系数据库标准语言SQL
复习草稿,待完善
SQL概述
SQL 集数据查询、数据操纵、数据定义、数据控制于一体。
** SQL特点:**
- 综合统一:
- 高度非过程化
- 面向集合的操作方式
- 以同一种语法结构提供多种使用方式
数据定义
数据字典:
记录所有定义信息。
执行SQL数据定义语句实际上就是对数据字典中的相关信息进行更新。
(1)模式
- 定义模式:
CREATE SCHEMA <模式名> AUTHORIZATION <用户名>;
。若未指定模式名,默认为用户名。
可在创建模式时同时在模式定义中创建基本表、视图、定义授权。 - 删除模式:
DROP SCHEMA <模式名> <CASCADE | RESTRICT>;
CASCADE和RESTRICT 二者必选其一,CASCADE(级联)表示在删除模式时将该模式中全部的数据库对象全部删除;RESTRICT(限制)表示如果该模式中已定义了下属的数据库对象(如表、视图等)则拒绝执行该删除语句,只有该模式中没有任何下属对象时才能删除。
(2)基本表
- 数据类型:
定义表的各个属性时需要指明其数据类型及长度。
常用数据类型:
-
定义基本表
每行依次为 列名+数据类型+列级完整性约束条件;如果要定义表级完整性约束条件则需要在最后一行定义;若完整性约束涉及该表中的多个属性列,则必须定义在表级上,否则可以定义在表级上也可以定义在列级上。 -
模式与表
定义表所属的模式的3种方法:
- 在表中显式给出模式名:
CREATE TABLE "S-T".Student(...);
- 创建模式语句中创建表
- 设置所属模式,这样在创建表时表名中不必给出模式名。
- 修改基本表
主要修改内容包括:增加列、增加表级完整性约束、删除列、删除完整性约束、修改某列的列名和数据类型。
ALTER TABLE <表名>
ADD <新列名> <数据类型