入门精通1-概述

四种语言的简介和DDL是用法学习

SQL功能概述

数据定义功能(DDL):创建CREATE、修改ALTER、删除DROP
数据查询功能(DQL):查询SELECT
数据操纵功能(DML):插入INSERT、删除DELETE、刷新UPDATE
数据控制功能(DCL):授权GRANT、回收REVOKE、提交COMMIT、回滚ROLLBACK

CREATE

中括号[]表示可选输入,小括号<>表示必须输入。

创建表

1
2
3
4
5
6
7
CREATE TABLE <表名>(
<列名 数据类型> [列级完整性条件约束]
[,<列名 数据类型> [列级完整性条件约束]
...
]
[,<表级完整性约束条件>]
);

创建视图

1
2
3
CREATE VIEW <视图名> [(<列名> [,<列名>...])]
AS <子查询>
[WITH CHECK OPTION]

视图的列名要么不写,或者全写。但是一下三种情况必须全写:
- 列同名
- 列存在表达式或者集函数
- 列需要重命名
子查询中不能有order by语句
如果有ORDER BY语句时

创建索引

1
2
3
4
5
6
CREATE [UNIQUE] [CLUSTER] INDEX <索引名>
ON <表名> (<列名> [<次序>]
[, <列名> [<次序>]]
...
);

其中,UNIQUE表示索引的值不能重复
CLUSTER表示建立的索引为聚族索引,聚族索引即索引项顺序与表中记录的物理顺序一致的索引组织。一个基表最多只能有一个聚族索引。

DROP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
删除表
*/
DROP TABLE <表名>;

/**
删除视图
*/
DROP VIEW <视图名>;

/**
删除索引
*/
DROP INDEX <索引名>;

ALTER

ALTER TABLE用于表修改,类型有增删改

1
2
3
4
ALTER TABLE <表名>
[ADD <新列名> <数据类型> [完整性约束]]
[DROP [完整性约束名]]
[MODIFY <列名> <数据类型>]

修改表中的删除drop指删除完整性约束。SQL中没有直接删除属性列的语句。以下为使用例子

1
2
ALTER TABLE EMP
DROP UNIQUE(EID)