图书目录

目录

第1章SQL基础入门

1.1SQL概述

1.2Oracle

1.2.1Oracle的组成及特点

1.2.2Oracle的体系结构

1.2.3SQL*Plus简介

1.3SQL Server

1.3.1SQL Server的结构

1.3.2数据库访问接口

1.3.3查询分析器

1.4PL/SQL

1.4.1PL/SQL简介

1.4.2PL/SQL的程序结构

1.4.3PL/SQL的定义

1.4.4PL/SQL的条件结构

1.4.5PL/SQL的循环结构

1.5TSQL

1.5.1TSQL概述

1.5.2TSQL的组成

1.6TSQL的流程控制

1.6.1IF…ELSE

1.6.2BEGIN…END

1.6.3CASE

1.6.4WHILE…CONTINUE…BREAK

1.6.5WAITFOR

1.6.6GOTO

1.6.7RETURN

1.7小结

第2章SQL语言语法

2.1字符串类型

2.1.1CHAR和VARCHAR

2.1.2BIT和VARBIT

2.2数值型类型

2.2.1NUMERIC

2.2.2DECIMAL

2.2.3INTEGER和SMALLINT

2.2.4FLOAT、REAL和DOUBLE PRECISION

2.3日期时间型类型

2.3.1DATA

2.3.2TIME

2.3.3TIMESTAMP

2.3.4INTERVAL

2.3.5常用数据类型应用

2.4表达式

2.5运算符

2.5.1比较运算符

2.5.2算术运算符

2.5.3逻辑运算符

2.5.4通配符

2.6小结

第3章查询语句

3.1SELECT语句

3.1.1SELECT语句结构

3.1.2SELECT语句执行过程

3.2列查询

3.2.1SELECT子句

3.2.2单列查询

3.2.3多列查询

3.2.4对数据列进行算术运算

3.2.5为数据列指定别名

3.2.6查询所有列

3.2.7使用DISTINCT关键字

3.2.8使用TOP关键字

3.3INTO子句

3.4FROM子句

3.4.1FROM子句语法

3.4.2表的别名

3.5小结

第4章复合查询

4.1WHERE子句

4.1.1数据示例表

4.1.2单条件查询

4.1.3空值运算符

4.1.4范围运算符

4.1.5列表运算符

4.2条件查询

4.2.1使用逻辑运算符组合条件

4.2.2复合条件查询

4.3GROUP BY子句

4.3.1用GROUP BY子句创建分组

4.3.2用CUBE运算符汇总数据

4.3.3用ROLLUP运算符汇总数据

4.3.4用GROUPING函数处理NULL值

4.4HAVING子句

4.5ORDER BY子句

4.5.1单列排序

4.5.2逆序排列

4.5.3多列排序

4.5.4单表查询各子语句总结

4.6多表查询

4.6.1无条件多表查询

4.6.2等值多表查询

4.6.3非等值多表查询

4.7模糊查询

4.7.1LIKE运算符

4.7.2通配符

4.7.3ESCAPE子句和转义符

4.7.4实现模糊查询

4.8小结

第5章连接查询

5.1表的基本连接

5.1.1表的连接概述

5.1.2连接运算符

5.1.3示例数据表

5.1.4表的连接类型

5.2内连接

5.2.1等值连接

5.2.2自然连接

5.2.3不等连接

5.2.4自连接

5.2.5多表连接

5.3外连接

5.3.1左外连接

5.3.2右外连接

5.3.3全外连接

5.4交叉连接

5.5联合查询

5.5.1UNION运算符

5.5.2UNION运算结果排序

5.5.3UNION ALL与UNION

5.5.4对多表进行UNION运算

5.5.5联合查询注意事项

5.6SQL查询原理及注意问题

5.7小结

第6章子查询

6.1子查询概述

6.1.1子查询结构及其执行过程

6.1.2示例数据表

6.2单值比较子查询

6.2.1含有WHERE子句的单值比较子查询

6.2.2含有聚合函数的子查询

6.2.3在多表查询中使用单值比较子查询

6.3返回多行的子查询

6.3.1IN子查询

6.3.2在多表查询中使用IN子查询

6.3.3EXISTS子查询

6.3.4EXISTS子查询典型应用

6.3.5EXISTS子查询注意事项

6.4带有ANY或ALL谓词的子查询

6.4.1带有ANY谓词的子查询

6.4.2带有ALL谓词的子查询

6.5相关子查询

6.5.1比较运算符引入相关子查询

6.5.2含有聚合函数的相关子查询

6.5.3谓词IN引入相关子查询

6.5.4HAVING子句中使用相关子查询

6.6嵌套子查询

6.7小结

第7章SQL函数

7.1汇总函数

7.1.1数据表实例

7.1.2COUNT

7.1.3SUM

7.1.4AVG

7.1.5MAX

7.1.6MIN

7.2日期/时间函数

7.2.1GETDATE

7.2.2DATEDIFF

7.2.3DATEADD

7.2.4DATEPART

7.3数学函数

7.4字符串函数

7.4.1字符转换函数

7.4.2字符串操作函数

7.5转换函数

7.6小结

第8章操作表结构

8.1表的基本结构

8.2定义表结构

8.2.1创建基本表

8.2.2PRIMARY KEY约束

8.2.3NOT NULL约束

8.2.4UNIQUE约束

8.2.5FOREIGN KEY约束

8.2.6DEFAULT约束

8.2.7CHECK约束

8.3表结构的修改

8.3.1增加新字段

8.3.2修改字段

8.3.3删除字段

8.4表的删除及重命名

8.4.1表的删除

8.4.2表的重命名

8.5数据库的操作

8.5.1创建数据库

8.5.2删除数据库

8.6小结

第9章视图和索引的操作

9.1索引概述

9.1.1索引的概念

9.1.2索引的类型

9.2索引的创建

9.2.1示例数据表

9.2.2创建索引基本语法

9.2.3创建聚簇索引

9.2.4创建唯一索引

9.2.5创建单字段非聚簇索引

9.2.6创建多字段非聚簇索引

9.3删除索引

9.4索引的使用原则

9.4.1正确建立索引

9.4.2选择索引类型

9.5视图概述

9.5.1视图的概念

9.5.2视图的优缺点

9.6视图的创建

9.6.1创建视图基本语法

9.6.2创建简单视图

9.6.3创建复杂视图

9.6.4创建基于视图的视图

9.6.5创建视图的注意事项

9.7视图的删除

9.8小结

第10章数据插入操作

10.1数据插入语句

10.1.1示例数据表

10.1.2插入语句基本语法

10.2单行插入操作

10.2.1不指定字段的整行插入

10.2.2指定字段的整行插入

10.2.3空值的插入

10.2.4唯一值的插入

10.2.5通过视图插入行

10.3多行插入操作

10.3.1使用INSERT VALUES语句进行多行插入

10.3.2使用INSERT SELECT语句进行多行插入

10.4数据的复制

10.5小结

第11章数据更新和删除

11.1数据更新基本语法

11.1.1UPDATE基本语法

11.1.2示例数据表

11.2更新单个字段值

11.2.1更新数据为外部输入

11.2.2更新数据为内部函数

11.2.3更新数据为空值

11.2.4更新数据为字段本身运算值

11.2.5更新数据为本表字段值

11.2.6更新数据为外表字段值

11.2.7更新多记录的单个字段值

11.3更新多个字段值

11.3.1更新单记录的多个字段值

11.3.2更新多记录的多个字段值

11.4数据删除

11.4.1数据删除语句基本语法

11.4.2删除单行数据

11.4.3删除多行数据

11.4.4删除所有行

11.5通过视图更新表

11.5.1通过视图更新表数据

11.5.2通过视图删除表数据

11.5.3使用视图更新删除数据的注意事项

11.6小结

第12章数据控制

12.1数据库安全模式

12.1.1用户

12.1.2数据库对象

12.1.3权限

12.2数据控制语句

12.2.1GRANT语句

12.2.2REVOKE语句

12.3角色管理

12.3.1创建角色

12.3.2删除角色

12.4SQL Server的数据安全控制

12.4.1SQL Server的身份验证

12.4.2SQL Server的用户管理

12.4.3SQL Server的角色管理

12.4.4SQL Server的权限管理

12.5Oracle的数据安全控制

12.5.1Oracle的用户管理

12.5.2Oracle的权限管理

12.5.3Oracle的角色管理

12.6小结

第13章完整性控制

13.1数据完整性

13.1.1示例数据表

13.1.2完整性的引入

13.1.3完整性的分类

13.2实体完整性

13.2.1PRIMARY KEY约束

13.2.2NOT NULL约束

13.2.3UNIQUE约束

13.3参照完整性

13.3.1参照完整性概述

13.3.2FOREIGN KEY约束

13.4用户自定义的完整性

13.4.1DEFAULT约束

13.4.2CHECK约束

13.5规则

13.5.1删除规则

13.5.2更新规则

13.5.3MATCH子句

13.6SQL Server中的完整性控制

13.6.1创建规则

13.6.2规则的绑定

13.6.3规则的松绑与删除

13.6.4创建默认值

13.6.5默认值的绑定与松绑

13.6.6默认值的松绑和删除

13.7Oracle的数据完整性的实现

13.7.1Oracle中的实体完整性

13.7.2Oracle中的参照完整性

13.7.3Oracle中的用户自定义完整性

13.8小结

第14章存储过程

14.1存储过程的概念

14.1.1示例数据表

14.1.2存储过程概述

14.2SQL Server的流程控制语句

14.2.1顺序控制语句

14.2.2条件控制语句

14.2.3循环控制语句

14.3SQL Server的存储过程

14.3.1SQL Server的存储过程概述

14.3.2系统存储过程

14.3.3存储过程创建及删除语法

14.3.4创建不带参数的存储过程

14.3.5创建带参数的存储过程

14.3.6创建带通配符参数的存储过程

14.3.7在企业管理器中操作存储过程

14.4Oracle的流程控制语句

14.4.1条件控制语句

14.4.2循环控制语句

14.5Oracle中的存储过程

14.5.1Oracle的存储过程结构

14.5.2创建存储过程

14.6小结

第15章触发器

15.1触发器基本概念

15.1.1触发器概述

15.1.2触发器原理

15.1.3示例数据表

15.2SQL Server中的触发器

15.2.1创建及删除触发器语法

15.2.2创建INSERT触发器

15.2.3创建UPDATE触发器

15.2.4创建DELETE触发器

15.2.5INSTEAD OF触发器

15.2.6嵌套触发器

15.2.7递归触发器

15.2.8用企业管理器管理触发器

15.2.9使用触发器的注意事项

15.3Oracle中的触发器

15.3.1Oracle触发器类型

15.3.2创建及删除Oracle触发器

15.4小结

第16章事务处理与并发控制

16.1SQL事务

16.1.1示例数据库

16.1.2事务的引入

16.1.3事务的原理

16.1.4事务的特性

16.1.5SQL的事务处理语句

16.2SQL Server中的事务处理语句

16.2.1事务开始

16.2.2设置回滚标记

16.2.3设置保存点

16.2.4提交事务

16.2.5回滚事务

16.3SQL Server中的事务处理模式

16.3.1自动提交事务

16.3.2显式事务

16.3.3隐式事务

16.3.4嵌套事务

16.4Oracle的事务处理

16.4.1COMMIT命令

16.4.2ROLLBACK命令

16.4.3SAVEPOINT命令

16.5并发控制

16.5.1并发的引入和解决

16.5.2事务的隔离级别

16.6SQL Server中的并发控制

16.6.1锁的粒度和类型

16.6.2SQL Server的隔离级别

16.6.3SET TRANSACTION语句

16.6.4阻塞与死锁

16.7Oracle的并发控制

16.7.1Oracle的隔离级别

16.7.2只读事务

16.8小结

第17章SQL游标

17.1游标的基本概念

17.1.1游标概述

17.1.2示例数据表

17.2SQL Server中的游标

17.2.1声明游标

17.2.2打开游标

17.2.3提取数据

17.2.4关闭游标

17.2.5释放游标

17.3SQL Server中游标的应用

17.3.1游标变量

17.3.2使用游标获取数据

17.3.3使用游标更新数据

17.3.4使用游标删除数据

17.4Oracle的游标

17.5小结