SQL总结
一、CREATE TABLE 语句
1.语法
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
2.数据类型
数据类型 | 描述 |
---|---|
integer(size) int(size) smallint(size) tinyint(size) | 仅容纳整数。在括号内规定数字的最大位数 |
decimal(size,d) numeric(size,d) | 容纳带有小数的数字。“size” 规定数字的最大位数。“d” 规定小数点右侧的最大位数。 |
char(size) | 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。在括号中规定字符串的长度。 |
varchar(size) | 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。在括号中规定字符串的最大长度。 |
date(yyyymmdd) | 容纳日期。 |
二、UNIQUE 约束
- UNIQUE 是对创建的表的属性约束条件,与位置无关
- UNIQUE 约束唯一标识数据库表中的每条记录。
- UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性约束。
- UNIQUE约束允许出现空值但不允许出现重复值, PRIMARY KEY约束不允许出现空值
- PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
- 请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
三、CREATE INDEX 语句
定义:用于在表中创建索引,语法格式:
CREATE [UNIQUE] INDEX<索引名> ON <表名> ( <列名> [<次序>] ,<列名> [<次序>],) INCLUDE(属性名)WHERE 约束条件
1.SQL CREATE INDEX 语法
在表上创建一个简单的索引。允许使用重复的值:
CREATE INDEX index_name ON table_name (column_name)
// 注释:"index_name"规定创建的索引名,"column_name" 规定需要索引的列。
2.SQL CREATE UNIQUE INDEX 语法
在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。
CREATE UNIQUE INDEX index_name ON table_name (column_name)
3.SQL CREATE CLUSTERED INDEX 语法
在表上创建一个聚集索引:数据文件中数据记录排列顺序与索引文件中索引项的排列顺序一致。
CREATE CLUSTERED INDEX index_name ON table_name (column_name)
4.SQL CREATE NONCLUSTERED INDEX 语法
在表上创建一个非聚集索引。
CREATE NONCLUSTERED INDEX index_name ON table_name (column_name)
建有唯一聚集索引的视图称为索引视图
四、IDENTITY
定义:定义某一列为标识列
五、集合操作
操作名 | 含义 |
---|---|
并操作 UNION | 合并SELECT语句 |
交操作 INTERSECT | 取SELECT语句的交集 |
差操作 EXCEPT 或 NOT IN | 对SELECT语句做差(一个语句有,另一个语句没有) |
六、ALTER TABLE 语句
定义:ALTER TABLE 语句用于在已有的表中添加、修改或删除列。
SQL ALTER TABLE 语法
在表中添加列,请使用下列语法:
ALTER TABLE table_name ADD column_name datatype
要删除表中的列,请使用下列语法:
ALTER TABLE table_name DROP COLUMN column_name
//注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN column_name)。
要改变表中列的数据类型,请使用下列语法:
ALTER TABLE table_name ALTER COLUMN column_name datatype
七、ALTER DATABASE 语法
修改数据库的数据大小
ALTER DATABASE 数据库名 MODIFY FILE(NAME = 数据文件名,SIZE = 文件容量)
//其中的“文件容量”必须大于原有的容量
八、DEFAULT 约束
定义:向列中插入默认值