×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787115624413
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:408
  • 出版时间:2024-08-01
  • 条形码:9787115624413 ; 978-7-115-62441-3

本书特色

引导读者循序渐进地完成常见的SQL任务

以实际的例子说明概念的应用方法

配套练习题帮助及时检验所学内容

本书可作为SQL或数据库相关课程的参考教材,也可作为SQL的案例参考和函数速查手册,适合有一定编程基础、想要上手使用SQL的人阅读。

内容简介

本书用25章的篇幅帮助读者使用SQL构建高效的数据库,高效地检索数据,以及掌握从管理数据库性能到数据库安全等各个方面的知识。
本书在第6版的基础上进行了全面修订和重新组织,节奏更紧凑,更有助于深入理解现代SQL开发。本书基于标准化的SQL,使用免费、易用的Oracle Database Express展示代码。此外,本书还带有更多示例和实践练习。
本书以直观、循序渐进的方式展示如何使用数据库结构、对象、查询、表等。读者将学习如何应用高级技术,包括事务、连接,以及使用视图和子查询进行复杂数据检索。
循序渐进的示例引导读者完成*常见的SQL任务。
答疑和实践练习帮助读者测试所学知识并提升技能。
“注意”“提示”“警告”指出学习要点和问题解决方案。
本书主要内容
关系型数据库和SQL的概念
如何理解“数据”这一概念
建立数据库并规划高效的数据库设计
定义实体和关系,建立数据结构,并创建数据库对象
将原始数据库“规范化”为逻辑组织的表格
编辑关系型数据和表格并管理事务
编写有效、高性能的查询
对数据进行分类、汇总、排序、分组和调整
处理日期和时间
在查询中结合表,使用子查询,并组合多个查询
通过索引和其他技术优化性能
管理数据库和用户
保护数据库和数据

目录

第 1 章 关系型数据库和 SQL 1

1.1 在数据驱动的世界中壮大 2

1.1.1 组织、数据和用户群 2

1.1.2 数据库的定义 3

1.1.3 常见的数据库环境 3

1.1.4 客户机/服务器环境 4

1.1.5 基于 Web 的环境 4

1.2 关系型数据库简介 5

1.2.1 示例数据库简介 5

1.2.2 数据库的逻辑元素和物理元素 8

1.2.3 数据库模式 9

1.3 关系型数据库持续领跑. 9

1.4 示例和习题 10

1.5 小结 10

1.6 答疑 10

1.7 实践练习 11

第 2 章 SQL 语言的组成部分 12

2.1 SQL 的定义和历史 12

2.2 SQL 是一种标准语言 13

2.2.1 ANSI SQL 标准 13

2.2.2 标准的重要性 14

2.2.3 符合 SQL 标准的各种产品 14

2.2.4 本书用到的 SQL 产品 15

2.2.5 为自己和组织选择合适的产品 15

2.3 SQL 会话 15

2.3.1 CONNECT 16

2.3.2 DISCONNECT 和 EXIT 16

2.4 SQL 命令的种类 16

2.4.1 定义数据库结构 16

2.4.2 操作数据 17

2.4.3 获取数据库中的数据 17

2.4.4 数据控制语言 17

2.4.5 数据管理命令的使用 18

2.4.6 事务控制命令的使用 18

2.5 小结 18

2.6 答疑 18

2.7 实践练习 19

第 3 章 了解自己的数据 20

3.1 BIRD 数据库:本书的示例和习题 20

3.2 如何了解数据 20

3.2.1 鸟类信息 21

3.2.2 组织和用户 21

3.2.3 扩充数据库的机会 22

3.3 实体关系图 22

3.3.1 实体和关系 22

3.3.2 详细的实体/表 23

3.3.3 属性(列)的定义 23

3.3.4 表的命名标准 25

3.4 示例和习题 25

3.5 小结 25

3.6 答疑 25

3.7 实践练习 26

第 4 章 建立数据库 27

4.1 找到所需脚本文件 27

4.2 为实践练习做准备 27

4.2.1 下载并安装数据库软件 28

4.2.2 其他可选的数据库软件 30

4.2.3 创建具备所需权限的用户 31

4.2.4 为 BIRDS 数据库创建表和数据 32

4.3 各张表的数据清单 34

4.3.1 BIRDS 表的第 1 部分 34

4.3.2 BIRDS 表的第 2 部分 35

4.3.3 FOOD 表 35

4.3.4 BIRDS_FOOD 表 36

4.3.5 MIGRATION 表 37

4.3.6 BIRDS_MIGRATION 表 37

4.3.7 NESTS 表 38

4.3.8 BIRDS_NESTS 表 38

4.3.9 NICKNAMES 表 39

4.3.10 LOCATIONS 表 39

4.3.11 PHOTOS 表 40

4.4 小结 40

4.5 答疑 40

4.6 实践练习 40

第 5 章 关系型(SQL)数据库设计的基础知识 42

5.1 理解数据库设计与 SQL 的关系 42

5.2 数据库设计过程 42

5.3 选择数据库设计方法 43

5.4 用简单过程设计 BIRDS 数据库 44

5.4.1 了解数据 44

5.4.2 收集信息:向合适的人提出合适的问题 47

5.4.3 数据建模 47

5.5 逻辑模型与物理设计 49

5.6 数据库的生命周期 49

5.6.1 开发环境 50

5.6.2 测试环境 50

5.6.3 生产环境 50

5.7 小结 51

5.8 答疑 51

5.9 实践练习 51

第 6 章 定义实体和关系 53

6.1 为数据创建模型 53

6.1.1 数据 53

6.1.2 关系 54

6.1.3 参照完整性 54

6.2 定义关系 56

6.2.1 一对一关系 56

6.2.2 一对多关系 56

6.2.3 多对多关系 56

6.2.4 递归关系 57

6.3 应用参照完整性 57

6.3.1 确定主键 58

6.3.2 确定外键 58

6.4 创建实体关系 59

6.5 小结 60

6.6 答疑 60

6.7 实践练习 61

第 7 章 数据库的规范化 63

7.1 什么是规范化 63

7.1.1 原始数据库 64

7.1.2 数据库逻辑设计 64

7.2 *常见的范式 65

7.2.1 第 一范式(FNF):有主键 65

7.2.2 第二范式(SNF):全主键依赖. 66

7.2.3 第三范式(TNF):只有主键依赖 69

7.2.4 命名规范 70

7.2.5 规范化的优点 71

7.2.6 规范化的缺点 72

7.3 数据库的反规范化 72

7.4 把范式应用于数据库 72

7.4.1 把第 一范式应用于鸟类救助机构数据 72

7.4.2 把第二范式应用于鸟类救助机构数据 73

7.4.3 把第三范式应用于鸟类救助机构数据 73

7.5 小结 74

7.6 答疑 74

7.7 实践练习 75

第 8 章 定义数据结构. 76

8.1 定义数据 76

8.2 理解基本数据类型 77

8.2.1 定长字符串 78

8.2.2 变长字符串 78

8.2.3 大对象类型 78

8.2.4 数值类型 79

8.2.5 DECIMAL 类型 79

8.2.6 整数 80

8.2.7 浮点数 80

8.2.8 日期和时间类型 80

8.2.9 字符串字面量 81

8.2.10 NULL 数据类型 82

8.2.11 布尔值 82

8.2.12 用户自定义类型 82

8.2.13 域 83

8.3 在 BIRDS 数据库中运用数据类型 83

8.4 小结 84

8.5 答疑 85

8.6 实践练习 85

第 9 章 数据库对象的创建和管理 87

9.1 数据库对象和模式的关系 87

9.2 表:数据的主要存储对象 88

9.2.1 列 89

9.2.2 行 90

9.2.3 CREATE TABLE 语句 90

9.2.4 命名规范 92

9.2.5 ALTER TABLE 命令的用法 92

9.2.6 由现有表创建新表 96

9.2.7 表的删除操作 98

9.3 完整性约束 99

9.3.1 主键约束 99

9.3.2 唯一性约束 100

9.3.3 外键约束 100

9.3.4 NOT NULL 约束 101

9.3.5 检查约束 101

9.3.6 约束的删除操作 102

9.4 小结 102

9.5 答疑 102

9.6 实践练习 103

第 10 章 操作数据. 104

10.1 数据操纵语言概述 104

10.2 用新数据填充表 105

10.2.1 在表中插入数据 105

10.2.2 在表的指定列插入数据 106

10.2.3 由另一张表插入数据 107

10.2.4 插入 NULL 值 108

10.3 更新现有数据 108

10.3.1 更新一列数据 108

10.3.2 更新一条或多条记录的多个列 110

10.4 删除数据 111

10.5 小结 112

10.6 答疑 112

10.7 实践练习 113

第 11 章 管理数据库事务 114

11.1 事务的定义 114

11.2 事务的控制 115

11.2.1 COMMIT 命令 115

11.2.2 ROLLBACK 命令 117

11.2.3 SAVEPOINT 命令 120

11.2.4 SET TRANSACTION 命令 124

11.3 处理糟糕的事务控制 124

11.4 小结 124

11.5 答疑 124

11.6 实践练习 125

第 12 章 数据库查询 127

12.1 SELECT 语句的用法 127

12.1.1 理解 SELECT 语句 128

12.1.2 查询唯一值 130

12.1.3 理解 FROM 子句 130

12.1.4 理解 WHERE 子句 131

12.1.5 理解 ORDER BY 子句 133

12.2 大小写敏感性 135

12.3 查询语句编写起步 136

12.3.1 对记录计数 138

12.3.2 查询其他用户的表 139

12.3.3 列别名的用法 140

12.4 小结 141

12.5 答疑 141

12.6 实践练习 141

第 13 章 用操作符归类数据 143

13.1 SQL 操作符的定义 143

13.2 比较操作符的用法 143

13.2.1 等于 144

13.2.2 不等于 144

13.2.3 小于和大于 145

13.2.4 比较操作符的组合使用 146

13.3 逻辑操作符的用法 147

13.3.1 IS NULL 147

13.3.2 BETWEEN. 148

13.3.3 IN 149

13.3.4 LIKE 150

13.3.5 EXISTS 151

13.3.6 ALL、SOME 和 ANY 151

13.4 连接操作符的用法 152

13.4.1 AND 152

13.4.2 OR 153

13.5 取反操作符的用法 154

13.5.1 不等于 155

13.5.2 NOT BETWEEN 155

13.5.3 NOT IN 156

13.5.4 NOT LIKE 156

13.5.5 IS NOT NULL 156

13.5.6 NOT EXISTS 157

13.6 算术操作符的用法 157

13.6.1 加法 158

13.6.2 减法 158

13.6.3 乘法 159

13.6.4 除法 159

13.6.5 算术操作符的组合使用 160

13.7 小结 161

13.8 答疑 161

13.9 实践练习 161

第 14 章 表连接查询 163

14.1 查询多张表中的数据 163

14.2 理解连接 164

14.2.1 等值连接 164

14.2.2 表的别名 166

14.2.3 不等连接 166

14.2.4 外连接 168

14.2.5 自连接 169

14.2.6 用多个键连接表 172

14.3 表连接的注意事项 173

14.3.1 基表 173

14.3.2 笛卡儿积 174

14.4 小结 176

14.5 答疑 176

14.6 实践练习 177

第 15 章 调整数据的显示格式 178

15.1 ANSI 字符函数 178

15.2 常用的字符函数 179

15.2.1 CONCAT 函数 179

15.2.2 UPPER 函数 181

15.2.3 LOWER 函数 181

15.2.4 DECODE 函数 182

15.2.5 SUBSTR 函数 183

15.2.6 TRANSLATE 函数 183

15.2.7 REPLACE 函数 184

15.2.8 LTRIM 函数 184

15.2.9 RTRIM 函数 185

15.3 其他字符函数 185

15.3.1 LENGTH 函数 185

15.3.2 COALESCE 函数 186

15.3.3 LPAD 函数 187

15.3.4 RPAD 函数 187

15.3.5 ASCII 函数 187

15.4 数学函数 188

15.5 格式转换函数 188

15.5.1 将数值转换为字符串 189

15.5.2 将字符串转换为数值 189

15.6 字符函数的组合使用. 190

15.7 小结 190

15.8 答疑 190

15.9 实践练习 191

第 16 章 日期和时间 193

16.1 日期的存储方式 193

16.1.1 标准的日期和时间类型 193

16.1.2 DATETIME 的构成元素 194

16.1.3 各种产品的日期类型 194

16.2 日期函数的用法 195

16.2.1 获取当前日期 195

16.2.2 时区的处理 197

16.2.3 日期相加 198

16.2.4 时间相减 199

16.2.5 其他日期函数的用法 200

16.3 日期的格式转换 201

16.3.1 日期格式符的用法 201

16.3.2 将日期转换为字符串 203

16.3.3 将字符串转换为日期 204

16.4 小结 204

16.5 答疑 204

16.6 实践练习 205

第 17 章 汇总查询结果数据 206

17.1 聚合函数的用法 206

17.1.1 COUNT 函数 207

17.1.2 SUM 函数 208

17.1.3 AVG 函数 209

17.1.4 MAX 函数 210

17.1.5 MIN 函数 210

17.2 数据分组 211

17.3 GROUP BY 子句的用法 211

17.3.1 分组函数 212

17.3.2 对所选数据分组 212

17.3.3 创建分组并使用聚合函数 212

17.4 GROUP BY 和 ORDER BY 的区别 213

17.5 CUBE 和 ROLLUP 表达式的用法 215

17.6 HAVING 子句的用法 217

17.7 小结 218

17.8 答疑 218

17.9 实践练习 219

第 18 章 用子查询定义未知数据 221

18.1 子查询的定义 221

18.1.1 子查询与 SELECT 语句合作 222

18.1.2 子查询与 CREATE TABLE 语句合作 224

18.1.3 子查询与 INSERT 语句合作 225

18.1.4 子查询与 UPDATE 语句合作 226

18.1.5 子查询与 DELETE 语句合作 227

18.2 嵌套子查询 227

18.3 关联子查询 229

18.4 小结 230

18.5 答疑 230

18.6 实践练习 231

第 19 章 组合查询. 232

19.1 单体查询和组合查询的区别 232

19.2 组合查询操作符的用法 233

19.2.1 UNION 操作符 233

19.2.2 UNION ALL 操作符 236

19.2.3 INTERSECT 操作符 238

19.2.4 EXCEPT 和 MINUS 操作符 239

19.3 组合查询中的 ORDER BY 240

19.4 组合查询中的 GROUP BY 242

19.5 获取准确的数据 243

19.6 小结 244

19.7 答疑 244

19.8 实践练习 244

第 20 章 视图和同义词 247

20.1 视图的定义 247

20.1.1 利用视图简化数据的访问 248

20.1.2 将视图用作一种安全措施 248

20.1.3 利用视图维护汇总数据 248

20.2 创建视图 249

20.2.1 由单张表创建视图 249

20.2.2 由多张表创建视图 250

20.2.3 由视图创建视图 253

20.2.4 由视图创建表 256

20.2.5 加入 ORDER BY 子句 257

20.3 通过视图更新数据 257

20.4 删除视图 261

20.5 嵌套视图对性能的影响 261

20.6 同义词的定义 261

20.6.1 同义词的创建 262

20.6.2 同义词的删除 263

20.7 小结 263

20.8 答疑 263

20.9 实践练习 263

第 21 章 管理数据库用户和安全 265

21.1 管理数据库用户 266

21.1.1 用户类型 266

21.1.2 用户管理由谁负责 266

21.1.3 用户在数据库中的位置 267

21.1.4 用户和模式的区别 267

21.2 用户管理过程 268

21.2.1 创建用户 268

21.2.2 模式的创建 271

21.2.3 模式的删除 272

21.2.4 修改用户 273

21.2.5 监控用户会话 273

21.2.6 删除用户权限 274

21.3 充分利用工具软件 274

21.4 数据库安全 275

21.5 赋权 275

21.5.1 系统级权限 276

21.5.2 对象级权限 276

21.5.3 赋予和撤销权限的权限 277

21.6 控制用户访问 277

21.6.1 GRANT 命令 278

21.6.2 REVOKE 命令 279

21.6.3 列级的访问控制 279

21.6.4 PUBLIC 账户 279

21.6.5 权限组 280

21.7 通过角色控制权限 280

21.7.1 CREATE ROLE 语句 281

21.7.2 DROP ROLE 语句 281

21.7.3 SET ROLE 语句 282

21.8 小结 282

21.9 答疑 283

21.10 实践练习 283

第 22 章 利用索引改善性能 285

22.1 索引的定义 285

22.2 索引的工作原理 286

22.3 CREATE INDEX 命令的用法 286

22.4 索引的类型 287

22.4.1 单列索引 287

22.4.2 唯一索引 288

22.4.3 复合索引 289

22.4.4 隐式索引 290

22.5 何时使用索引 290

22.6 何时不用索引 290

22.7 修改索引 292

22.8 删除索引 292

22.9 小结 292

22.10 答疑 292

22.11 实践练习 293

第 23 章 改善数据库性能 294

23.1 SQL 语句调优的定义 294

23.2 数据库调优和 SQL 语句调优的对比 294

23.3 格式化 SQL 语句 295

23.3.1 格式化语句提升可读性 295

23.3.2 重排 FROM 子句中表的顺序 297

23.3.3 重排表连接条件的顺序 297

23.3.4 *严筛选条件 298

23.4 全表扫描 299

23.5 其他影响性能的因素 300

23.5.1 使用 LIKE 操作符和通配符 300

23.5.2 避免使用 OR 操作符 301

23.5.3 避免使用 HAVING 子句 301

23.5.4 避免大规模排序操作 301

23.5.5 使用存储过程 301

23.5.6 使用视图 302

23.5.7 批量载入数据时禁用索引 302

23.6 基于成本的优化 302

23.7 小结 303

23.8 答疑 303

23.9 实践练习 304

第 24 章 系统目录的用法 306

24.1 系统目录的定义 306

24.2 创建系统目录 307

24.3 系统目录包含的内容. 307

24.3.1 用户数据 308

24.3.2 安全信息 308

24.3.3 数据库设计信息 308

24.3.4 性能统计信息 308

24.4 不同产品的系统目录表 308

24.5 查询系统目录 309

24.6 更新系统目录表对象. 312

24.7 小结 313

24.8 答疑 313

24.9 实践练习 313

第 25 章 更多练习 315

25.1 BIRDS 数据库 315

25.2 鸟类的捕食者 317

25.3 鸟类摄影师 318

25.4 创建新表 321

25.5 实践练习:查看表的信息 323

25.6 实践练习:简单查询 323

25.7 实践练习:新增表 324

25.8 实践练习:操作数据 324

25.9 实践练习:表连接 326

25.10 实践练习:比较操作符 327

25.11 实践练习:逻辑操作符 328

25.12 实践练习:连接操作符 330

25.13 实践练习:算术操作符 330

25.14 实践练习:字符函数 330

25.15 实践练习:聚合数据 333

25.16 实践练习:GROUP BY 和HAVING 334

25.17 实践练习:组合查询 334

25.18 实践练习:由现有表创建表 336

25.19 实践练习:插入来自其他表

的数据 337

25.20 实践练习:创建视图 337

25.21 实践练习:嵌入式子查询 338

25.22 实践练习:由子查询创建视图 339

25.23 实践练习:由 SQL 语句创建 SQL 代码 339

25.24 小结 340

25.25 实践练习 340

附录 A 常见 SQL 命令 342

附录 B 流行供应商的 RDBMS 产品 347

附录 C 测试题和习题答案. 348
展开全部

作者简介

Ryan Stephens 是一位企业家,他的职业生涯和他的多家 IT 公司都是围绕 SQL、数据和关系型数据库发展的。他与世界各地的机构、学生和 IT 专业人士分享知识和经验。他参与创立的两家公司—Perpetual Technologies, Inc.(PTI)和 Indy Data Partners(IDP),已为政府和大型商业客户提供了超过 25 年的专业数据库和 IT 服务。Ryan 为 Pearson 撰写过多本书,其中包括《SQL 入门经典(第 6 版)》。他的部分作品已被翻译并在国际上出版。此外,Ryan 曾在大型机构工作,并在 SQL、数据库设计、数据库管理和项目管理领域提供咨询服务。他为印第安纳大学与普渡大学印第安纳波利斯联合分校(Indiana University?CPurdue University in Indianapolis,IUPUI)设计并讲授数据库管理课程,目前也在为 Pearson Education 讲授 SQL 和数据库的在线课程。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航