编辑推荐
《SQL入门经典(第5版)》通过阅读《SQL入门经典(第5版)》,读者将学会如何使用SQL来创建高效的数据库、高效地提取数据,以及如何管理从数据库性能到数据库安全的各项工作。《SQL入门经典(第5版)》采用直观、循序渐进的方法,引导读者通过各种练习掌握实际操作技巧。读者将学习从基础知识到高级技术在内的所有SQL相关内容——包括视图、事务、Web数据发布,以及Oracle和Microsoft SQL Server对SQL的扩展。《SQL入门经典(第5版)》每章内容都建立在已学的知识之上,即使读者没有任何SQL知识,也可以通过《SQL入门经典(第5版)》,走向成功的坚实道路。
循序渐进的示例引导读者完成常见的SQL任务。问与答、测验和练习帮助读者检验知识的掌握情况。“注意”、“提示”和“警告”指出捷径和解决方案。
全球销量逾百万册的系列图书;
连续十余年打造的经典品牌;
直观、循序渐进的学习教程;
秉承Read Less.Do More(精读多练)的教学理念;
以示例引导读者完成常见的任务;
每章内容针对初学者精心设计,1小时轻松阅读学习,24小时彻底掌握关键知识。
每章案例与练习题助你轻松完成常见任务,通过实践提高应用技能,巩固所学知识。
学习如何:
·理解SQL的定义、工作方式,以及作用:
·定义高效的数据库结构和对象:
·将原始数据库“规格化”为逻辑表:
·使用DML编辑关系型数据和表;
·管理数据库事务;
·编写有效的、高性能的查询;
·对数据进行分类、汇总、排序、分组和调整;
·使用日期和时间:
·在查询中结合表,使用子查询,组合多个查询;
·掌握强大的查询优化技巧;
·管理数据库及其用户;
·实施有效的数据库安全措施;
·使用视图、同义词和系统目录;
·SQL在企业和网络中的扩展;
·掌握Oracle和Microsoft SQL Server对ANSI SQL的重要扩展。
内容简介
《SQL入门经典(第5版)》的作者都是数据库教学与应用的专家,有着丰富的经验。《SQL入门经典(第5版)》详细介绍了SQL语言的基本语法、基本概念,说明了各种SQL实现与ANSI标准之间的差别。书中包含了大量的范例,直观地说明了如何使用SQL对数据进行处理。每章后面还有针对性很强的测验与练习,能够帮助读者更好地理解和掌握学习的内容。在后的附录里还有关于安装MySQL的详细介绍、书中用到的关键SQL语句、测验和练习的答案。
《SQL入门经典(第5版)》的内容层次清晰,针对性强,非常适合初学者作为入门教材。
作者简介
作者:(美国)斯蒂芬森 (Ryan Stephens) (美国)普劳 (Ron Plew) (美国)琼斯 (Arie D.Jones) 译者:井中月 郝记生
内页插图
目录
第一部分 SQL概念综述
第1章 欢迎来到SQL世界
1.1 SQL定义及历史
1.1.1 什么是SQL
1.1.2 什么是ANSI SQL
1.1.3 新标准:SQL-2008
1.1.4 什么是数据库
1.1.5 关系型数据库
1.1.6 客户端/服务器技术
1.1.7 基于Web的数据库系统
1.1.8 主流数据库厂商
1.2 SQL会话
1.2.1 CONNECT
1.2.2 DISCONNECT和EXIT
1.3 SQL命令的类型
1.3.1 定义数据库结构
1.3.2 操作数据
1.3.3 选择数据
1.3.4 数据控制语言
1.3.5 数据管理命令
1.3.6 事务控制命令
1.4 本书使用的数据库
1.4.1 表命名标准
1.4.2 数据一瞥
1.4.3 表的构成
1.4.4 范例和练习
1.5 小结
1.6 问与答
1.7 实践
1.7.1 测验
1.7.2 练习
第二部分 建立数据库
第2章 定义数据结构
2.1 数据是什么
2.2 基本数据类型
2.2.1 定长字符串
2.2.2 变长字符串
2.2.3 大对象类型
2.2.4 数值类型
2.2.5 小数类型
2.2.6 整数
2.2.7 浮点数
2.2.8 日期和时间类型
2.2.9 直义字符串
2.2.10 NULL数据类型
2.2.11 布尔值
2.2.12 自定义类型
2.2.13 域
2.3 小结
2.4 问与答
2.5 实践
2.5.1 测验
2.5.2 练习
第3章 管理数据库对象
3.1 什么是数据库对象
3.2 什么是规划
3.3 表:数据的主要存储方式
3.3.1 列
3.3.2 行
3.3.3 CREATE TABLE语句
3.3.4 命名规范
3.3.5 ALTER TABLE命令
3.3.6 从现有表新建另一个表
3.3.7 删除表
3.4 完整性约束
3.4.1 主键约束
3.4.2 唯一性约束
3.4.3 外键约束
3.4.4 NOT NULL约束
3.4.5 检查约束
3.4.6 去除约束
3.5 小结
3.6 问与答
3.7 实践
3.7.1 测验
3.7.2 练习
第4章 规格化过程
4.1 规格化数据库
4.1.1 原始数据库
4.1.2 数据库逻辑设计
4.1.3 规格形式
4.1.4 命名规范
4.1.5 规格化的优点
4.1.6 规格化的缺点
4.2 去规格化数据库
4.3 小结
4.4 问与答
4.5 实践
4.5.1 测验
4.5.2 练习
第5章 操作数据
5.1 数据操作概述
5.2 用新数据填充表
5.2.1 把数据插入到表
5.2.2 给表里指定列插入数据
5.2.3 从另一个表插入数据
5.2.4 插入NULL值
5.3 更新现有数据
5.3.1 更新一列的数据
5.3.2 更新一条或多记录里的多个字段
5.4 从表里删除数据
5.5 小结
5.6 问与答
5.7 实践
5.7.1 测验
5.7.2 练习
第6章 管理数据库事务
6.1 什么是事务
6.2 控制事务
6.2.1 COMMIT命令
6.2.2 ROLLBACK命令
6.2.3 SAVEPOINT命令
6.2.4 ROLLBACK TO SAVEPOINT命令
6.2.5 RELEASE SAVEPOINT命令
6.2.6 SET TRANSACTIN命令
6.3 事务控制与数据库性能
6.4 小结
6.5 问与答
6.6 实践
6.6.1 测验
6.6.2 练习
第三部分 从查询中获得有效的结果
第7章 数据库查询
7.1 什么是查询
7.2 SELECT语句
7.2.1 SELECT语句
7.2.2 FROM子句
7.2.3 WHERE子句
7.2.4 ORDER BY子句
7.2.5 大小写敏感性
7.3 简单查询的范例
7.3.1 统计表里的记录数量
7.3.2 从另一个用户表里选择数据
7.3.3 使用字段别名
7.4 小结
7.5 问与答
7.6 实践
7.6.1 测验
7.6.2 练习
第8章 使用操作符对数据进行分类
8.1 什么是SQL里的操作符
8.2 比较操作符
8.2.1 相等
8.2.2 不等于
8.2.3 小于和大于
8.2.4 比较操作符的组合
8.3 逻辑操作符
8.3.1 IS NULL
8.3.2 BETWEEN
8.3.3 IN
8.3.4 LIKE
8.3.5 EXISTS
8.3.6 ALL、SOME和ANY操作符
8.4 连接操作符
8.4.1 AND
8.4.2 OR
8.5 求反操作符
8.5.1 不相等
8.5.2 NOT BETWEEN
8.5.3 NOT IN
8.5.4 NOT LIKE
8.5.5 IS NOT NULL
8.5.6 NOT EXISTS
8.6 算术操作符
8.6.1 加法
8.6.2 减法
8.6.3 乘法
8.6.4 除法
8.6.5 算术操作符的组合
8.7 小结
8.8 问与答
8.9 实践
8.9.1 测验
8.9.2 练习
第9章 汇总查询得到的数据
9.1 什么是汇总函数
9.1.1 COUNT函数
9.1.2 SUM函数
9.1.3 AVG函数
9.1.4 MAX函数
9.1.5 MIN函数
9.2 小结
9.3 问与答
9.4 实践
9.4.1 测验
9.4.2 练习
第10章 数据排序与分组
10.1 为什么要对数据进行分组
10.2 GROUP BY子句
10.2.1 分组函数
10.2.2 对选中的数据进行分组
10.2.3 创建分组和使用汇总函数
10.2.4 以整数代表字段名称
10.3 GROUP BY与ORDER BY
10.4 CUBE和ROLLUP语句
10.5 HAVING子句
10.6 小结
10.7 问与答
10.8 实践
10.8.1 测验
10.8.2 练习
第11章 调整数据的外观
11.1 ANSI字符函数
11.2 常用字符函数
11.2.1 串接函数
11.2.2 TRANSLATE函数
11.2.3 REPLACE
11.2.4 UPPER
11.2.5 LOWER
11.2.6 SUBSTR
11.2.7 INSTR
11.2.8 LTRIM
11.2.9 RTRIM
11.2.10 DECODE
11.3 其他字符函数
11.3.1 LENGTH
11.3.2 IFNULL(检查NULL值)
11.3.3 COALESCE
11.3.4 LPAD
11.3.5 RPAD
11.3.6 ASCII
11.4 算术函数
11.5 转换函数
11.5.1 字符串转换为数字
11.5.2 数字转换为字符串
11.6 字符函数的组合使用
11.7 小结
11.8 问与答
11.9 实践
11.9.1 测验
11.9.2 练习
第12章 日期和时间
12.1 日期是如何存储的
12.1.1 日期和时间的标准数据类型
12.1.2 DATETIME元素
12.1.3 不同实现的日期类型
12.2 日期函数
12.2.1 当前日期
12.2.2 时区
12.2.3 时间与日期相加
12.2.4 其他日期函数
12.3 日期转换
12.3.1 日期描述
12.3.2 日期转换为字符串
12.3.3 字符串转换为日期
12.4 小结
12.5 问与答
12.6 实践
12.6.1 测验
12.6.2 练习
第四部分 建立复杂的数据库查询
第13章 在查询里结合表
13.1 从多个表获取数据
13.2 结合的类型
13.2.1 结合条件的位置
13.2.2 等值结合
13.2.3 使用表的别名
13.2.4 不等值结合
13.2.5 外部结合
13.2.6 自结合
13.2.7 结合多个主键
13.3 需要考虑的事项
13.3.1 使用基表
13.3.2 笛卡尔积
13.4 小结
13.5 问与答
13.6 实践
13.6.1 测验
13.6.2 练习
第14章 使用子查询定义未确定数据
14.1 什么是子查询
14.1.1 子查询与SELECT语句
14.1.2 子查询与INSERT语句
14.1.3 子查询与UPDATE语句
14.1.4 子查询与DELETE语句
14.2 嵌套的子查询
14.3 关联子查询
14.4 子查询的效率
14.5 小结
14.6 问与答
14.7 实践
14.7.1 测验
14.7.2 练习
第15章 组合多个查询
15.1 单查询与组合查询
15.2 组合查询操作符
15.2.1 UNION
15.2.2 UNION ALL
15.2.3 INTERSECT
15.2.4 EXCEPT
15.3 组合查询里使用ORDER BY
15.4 组合查询里使用GROUP BY
15.5 获取准确的数据
15.6 小结
15.7 问与答
15.8 实践
15.8.1 测验
15.8.2 练习
第五部分 SQL性能调整
第16章 利用索引改善性能
16.1 什么是索引
16.2 索引是如何工作的
16.3 CREATE INDEX命令
16.4 索引的类型
16.4.1 单字段索引
16.4.2 唯一索引
16.4.3 组合索引
16.4.4 隐含索引
16.5 何时考虑使用索引
16.6 何时应该避免使用索引
16.7 修改索引
16.8 删除索引
16.9 小结
16.10 问与答
16.11 实践
16.11.1 测验
16.11.2 练习
第17章 改善数据库性能
17.1 什么是SQL语句调整
17.2 数据库调整与SQL语句调整
17.3 格式化SQL语句
17.3.1 为提高可读性格式化SQL语句
17.3.2 FROM子句里的表
17.3.3 结合条件的次序
17.3.4 最严格条件
17.4 全表扫描
17.5 其他性能考虑
17.5.1 使用LIKE操作符和通配符
17.5.2 避免使用OR操作符
17.5.3 避免使用HAVING子句
17.5.4 避免大规模排序操作
17.5.5 使用存储过程
17.5.6 在批加载时关闭索引
17.6 基于成本的优化
17.7 性能工具
17.8 小结
17.9 问与答
17.10 实践
17.10.1 测验
17.10.2 练习
第六部分 使用SQL管理用户和安全
第18章 管理数据库用户
18.1 数据库的用户管理
18.1.1 用户的类型
18.1.2 谁管理用户
18.1.3 用户在数据库里的位置
18.1.4 不同规划里的用户
18.2 管理过程
18.2.1 创建用户
18.2.2 创建规划
18.2.3 删除规划
18.2.4 调整用户
18.2.5 用户会话
18.2.6 禁止用户访问
18.3 数据库用户使用的工具
18.4 小结
18.5 问与答
18.6 实践
18.6.1 测验
18.6.2 练习
第19章 管理数据库安全
19.1 什么是数据库安全
19.2 什么是权限
19.2.1 系统权限
19.2.2 对象权限
19.2.3 谁负责授予和撤销权限
19.3 控制用户访问
19.3.1 GRANT命令
19.3.2 REVOKE命令
19.3.3 控制对单独字段的访问
19.3.4 数据库账户PUBLIC
19.3.5 权限组
19.4 通过角色控制权限
19.4.1 CREATE ROLE语句
19.4.2 DROP ROLE语句
19.4.3 SET ROLE语句
19.5 小结
19.6 问与答
19.7 实践
19.7.1 测验
19.7.2 练习
第七部分 摘要数据结构
第20章 创建和使用视图及异名
20.1 什么是视图
20.1.1 使用视图来简化数据访问
20.1.2 使用视图作为一种安全形式
20.1.3 使用视图维护摘要数据
20.2 创建视图
20.2.1 从一个表创建视图
20.2.2 从多个表创建视图
20.2.3 从视图创建视图
20.3 WITH CHECK OPTION
20.4 从视图创建表
20.5 视图与ORDER BY子句
20.6 通过视图更新数据
20.7 删除视图
20.8 嵌套视图对性能的影响
20.9 什么是异名
20.9.1 创建异名
20.9.2 删除异名
20.10 小结
20.11 问与答
20.12 实践
20.12.1 测验
20.12.2 练习
第21章 使用系统目录
21.1 什么是系统目录
21.2 如何创建系统目录
21.3 系统目录里包含什么内容
21.3.1 用户数据
21.3.2 安全信息
21.3.3 数据库设计信息
21.3.4 性能统计
21.4 不同实现里的系统目录表格
21.5 查询系统目录
21.6 更新系统目录对象
21.7 小结
21.8 问与答
21.9 实践
21.9.1 测验
21.9.2 练习
第八部分 在实际工作中应用SQL知识
第22章 高级SQL主题
22.1 光标
22.1.1 打开光标
22.1.2 从光标获取数据
22.1.3 关闭光标
22.2 存储过程和函数
22.3 触发器
22.3.1 CREATE TRIGGER语句
22.3.2 DROP TRIGGER语句
22.3.3 FOR EACH ROW语句
22.4 动态SQL
22.5 调用级接口
22.6 使用SQL生成SQL
22.7 直接SQL与嵌入SQL
22.8 窗口表格函数
22.9 使用XML
22.10 小结
22.11 问与答
22.12 实践
22.12.1 测验
22.
SQL入门经典(第5版) 电子书 下载 mobi epub pdf txt