软考SQL语句复习资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软考SQL语句复习资料
1.SQL数据定义语言(Data Definition Language,DDL)
1.1数据库的创建:
Create DataBase <数据库名>
1.2数据库的删除:
Drop DataBase <数据库名>
1.3基本表的创建:
Create Table <表名>
(
<列名> <数据类型> [列级完整性约束条件],
<列名> <数据类型> [列级完整性约束条件],
……….,
[表级完整性约束条件]
);
/*
** 注释常用数据类型:
** Char(n) 字符型varChar(n) 变长字符型
** Int 整型Float 浮点型Date 日期Time 时间
*/
1.4完整性约束
1.4.1实体完整性约束:
列级完整性约束条件Primary Key
表级完整性约束条件Primary Key (<主键名>,[主键名],…),
1.4.2参照完整性约束:
表级完整性约束条件:
Foreign Key (<外键列>) References <外键约束表名>(<外键约束列名>)
1.4.3用户自定义完整性约束:
列级完整性约束条件:
1非空约束:NOT NULL
2唯一约束:UNIQUE
3条件约束:CHECK(<约束条件>)
1.5基本表的修改:
Alter Table <表名>
[ADD <新列名><数据类型>[列级完整性约束条件] ] //增加新列
[Drop [列级完整性约束条件]] //删除约束
[Drop Column <列名>] //删除列
[Alter Column <列名><数据类型>] //修改已存在列的数据类型
1.6基本表的删除:
Drop Table <表名>
1.7视图的创建
Create View <视图名>[(<列名>[,<列名>+)…+
AS
<查询语句>
[WITH CHECK OPTION]; //更新视图时必须满足视图条件
1.8视图的删除:
Drop View<视图名>
1.9索引的创建
Create [UNIQUE] [CLUSTERED | NONCLUSTERED ] Index <索引名>
ON <表名> ( <列名> [< ASC | DESC >] [ , <列名> *< ASC | DESC >+ ,…… +);
1.10索引的删除:
Drop Index <索引名>
1.11触发器的创建:(由于决定放弃此块,没有详细的总结)
Create Trigger <触发器名>
ON <对象名>
FOR Insert, Update, Delete
AS
2SQL数据查询语言(Data Manipulation Language,DML)
2.1查询语句的结构
Select [ ALL | DISTINCT ] <目标列表达式> [,<目标列表达式>,….+ // ’*’ 所有行
From <表名或视图名>[,<表名或视图名>,…..+
[Where <行条件表达式>
[Group BY <列名> [Having <组条件表达式>] ]
[Order BY <列名> [ ASC | DESC] ]//[ 升序| 降序]
2.3聚合函数
COUNT ([ ALL | DISTINCT ] * )//统计元组个数
COUNT([ ALL | DISTINCT ] <列名>)//统计一列中值的个数
SUM([ ALL | DISTINCT ] <列名>)//计算一列值的总和
AVG([ ALL | DISTINCT ] <列名>)//计算一列值的平均值
MAX([ ALL | DISTINCT ] <列名>)//求一列值的最大值
MIN([ ALL | DISTINCT ] <列名>)//求一列值的最小值
2.4联结查询//From ________
等值连结 From 表1,表2 Where 表1.列=表2.列
非等值连结From 表1,表2 Where 表1.列<表2.列
内连结From 表1 INNER JOIN 表2 ON 连结条件1[JOIN 表3 ON 连结条件2….+
左右外连结From 表1 < LEFT | RIGHT > JOIN 表2 ON 连结条件1[JOIN 表3 ON 连结条件2….+
2.5嵌套查询
Where <列名> <集合比较符> (查询语句)
2.6集合查询
<查询语句1>
<并UNION | 交INTERSECT | 差EXCEPT>
<查询语句2>
2.7插入数据
Insert INTO <表名>(<列名1>[,<列名2>…+) Values(<值1>[,<值2>…+)
2.8删除数据
Delete From <表名> [Where <条件>]
2.9修改数据
Update <表名> Set <列名1>=<表达式1>[,<列名2>=<表达式2>…+ *Where <条件>];3SQL数据控制语言(Data Control Language,DCL)
3.1授予权限
Grant <权限>[,<权限>….+ * ON <对象类型> <对象名>] TO <用户> [,<用户>…+
[WHITH GRANT OPTION] //可以下放权限
3.2权限分类
SELECT 查询数据INSERT插入数据UPDATE 修改数据DELETE删除数据
ALTER修改表结构INDEX 建立表索引REFERENCES 定义表外键CREATETAB 创建表
ALLPRIVILEGES所有权限
3.3收回权限
Revoke <权限>[,<权限>….+ * ON <对象类型> <对象名>] From <用户> [,<用户>…+ 4SQL语言相关内容
4.1视图的优点
①提高安全性
②简化操作
③逻辑数据独立性
4.2存储过程优点
①重复使用
②提高性能
③减少网络流量
④安全性
4.3函数优缺点
①允许模块化程序设计
②执行速度更快
③减少网络流量
4.4SQL嵌入式相关知识
EXEC SQL 标志