《T-SQL编程入门经典》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:(美)PaulTurle,DanWood著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302205357
  • 页数:552 页
图书介绍:本书涵盖了在SQL Server 2005和2008中使用T-SQL的所有基础知识。

第1章 T-SQL和数据管理系统简介 1

1.1 T-SQL语言 1

1.1.1 T-SQL:是编程语言还是查询语言 2

1.1.2 SQL Server 2008中的新特性 3

1.1.3 数据库管理系统(DBMS) 4

1.2 作为关系数据库管理系统的SQL Server 5

1.2.1 表 5

1.2.2 关系 12

1.2.3 RDBMS与数据完整性 14

1.3 SQL Server与其他产品 17

1.3.1 Microsoft SQL Server 17

1.3.2 Oracle 18

1.3.3 IBM DB2 18

1.3.4 Informix 18

1.3.5 Sybase SQL Anywhere 18

1.3.6 Microsoft Access(Jet) 19

1.3.7 MySQL 19

1.4 小结 19

第2章 SQL Server基础 21

2.1 谁使用SQL Server 21

2.2 SQL Server版本和功能 23

2.2.1 SQL Server压缩版 23

2.2.2 SQL Server Express版 23

2.2.3 SQL Server工作组版 24

2.2.4 SQL Server标准版 24

2.2.5 SQL Server企业版 24

2.2.6 关系数据库引擎 24

2.3 语义 25

2.3.1 变化的术语 25

2.3.2 关系 27

2.3.3 主键 28

2.3.4 外键 29

2.4 规范化规则 30

2.5 应用规范化规则 33

2.5.1 想一想 35

2.5.2 多重关联 37

2.5.3 多值列 38

2.5.4 规范化还是去规范化 39

2.5.5 质疑权威 40

2.6 查询处理的机制 40

2.7 AdventureWorks数据库 42

2.8 小结 42

第3章 SQL Server工具 45

3.1 常见的SQL Server任务 45

3.2 SQL Server Management Studio 47

3.2.1 工具窗口 50

3.2.2 工具栏 58

3.2.3 SQL Server Management Studio配置 64

3.3 SQL Server Business Intelligence Development Studio 66

3.4 SQL Server Profiler 67

3.5 Database Tuning Advisor 67

3.6 SQL Server Configuration Manager 68

3.7 命令行工具 68

3.8 编写查询 70

3.8.1 脚本选项 72

3.8.2 使用图形化的查询设计器 73

3.8.3 使用模板 77

3.8.4 使用调试功能 79

3.9 小结 84

3.10 习题 85

第4章 T-SQL语言 87

4.1 SQL的本质 88

4.2 从哪儿开始 89

4.3 数据操纵语言(DML) 89

4.3.1 查询是有层次的 89

4.3.2 基于集合的操作 90

4.3.3 基于行的操作 90

4.3.4 查询语法基础 90

4.3.5 命名规范 94

4.3.6 对象的界定 96

4.3.7 注释脚本 97

4.3.8 使用模板 100

4.3.9 生成脚本 100

4.3.10 管理脚本 100

4.3.11 版本控制 101

4.4 数据定义语言 101

4.4.1 创建表 102

4.4.2 创建视图 102

4.4.3 创建存储过程 103

4.4.4 创建触发器 103

4.4.5 创建用户自定义函数 104

4.4.6 脚本编写实践 105

4.5 数据控制语言 109

4.6 小结 111

4.7 习题 111

第5章 数据检索 113

5.1 存储与检索 113

5.2 SELECT语句 113

5.2.1 列的选择 115

5.2.2 列的别名 120

5.2.3 被计算和继承的列 121

5.2.4 行的过滤 123

5.2.5 WHERE子句 123

5.2.6 使用括号 136

5.2.7 结果排序 138

5.2.8 排在前面的值 140

5.3 小结 142

5.4 习题 142

第6章 SQL函数 145

6.1 函数的组成 146

6.1.1 一个论点 146

6.1.2 确定性函数 147

6.1.3 在函数中使用用户变量 147

6.1.4 在查询中使用函数 148

6.1.5 嵌套函数 149

6.2 聚合函数 149

6.2.1 AVG()函数 150

6.2.2 COUNT()函数 151

6.2.3 MIN()与MAX()函数 151

6.2.4 SUM()函数 152

6.3 配置变量 152

6.3.1 @@ERROR变量 152

6.3.2 @@SERVICENAME变量 154

6.3.3 @@TOTALE_RRORS变量 154

6.3.4 @@TOTAL_READ变量 154

6.3.5 @@VERSION变量 154

6.3.6 错误函数 155

6.4 转换函数 156

6.4.1 CAST()函数 157

6.4.2 CONVERT()函数 159

6.4.3 STR()函数 161

6.5 游标函数与变量 162

6.5.1 CURSOR_STATUS()函数 162

6.5.2 @@CURSOR_ROWS全局变量 162

6.5.3 @@FETCH_STATUS全局变量 163

6.6 日期函数 163

6.6.1 DATEADD()函数 163

6.6.2 DATEDIFF()函数 164

6.6.3 DATEPART()与DATENAME()函数 167

6.6.4 GETDATE()与GETUTCDATE()函数 167

6.6.5 SYSDATETIME()和SYSUTCDATETIME()函数 168

6.6.6 DAY()、MONTH()和YEAR()函数 168

6.7 字符串操纵函数 168

6.7.1 ASCII()、CHAR()、UNICODE()和NCHAR()函数 169

6.7.2 CHARINDEX()和PATINDEX()函数 171

6.7.3 LEN()函数 172

6.7.4 LEFT()与RIGHT()函数 172

6.7.5 SUBSTRING()函数 173

6.7.6 LOWER()与UPPER()函数 175

6.7.7 LTRIM()与RTRIM()函数 177

6.7.8 REPLACE()函数 177

6.7.9 REPLICATE()与SPACE()函数 178

6.7.10 REVERSE()函数 178

6.7.11 STUFF()函数 179

6.7.12 QUOTENAME()函数 179

6.8 数学函数 179

6.9 元数据函数 180

6.10 排列函数 183

6.10.1 ROW_NUMBER()函数 183

6.10.2 RANK()与DENSE RANK()函数 183

6.11.3 NTILE(n)函数 184

6.11 安全函数 185

6.12 系统函数与系统变量 186

6.12.1 COALESCE()函数 188

6.12.2 DATALENGTH()函数 188

6.13 系统统计变量 189

6.14 小结 190

6.15 习题 190

第7章 聚合与分组 193

7.1 分组还是不分组 193

7.2 使用聚合函数 194

7.2.1 COUNT()函数 195

7.2.2 SUM()函数 195

7.2.3 AVG()函数 196

7.3 理解统计函数 197

7.3.1 STDEV()函数 197

7.3.2 STDEVP()函数 198

7.3.3 VAR()函数 198

7.3.4 VARP()函数 199

7.3.5 用户自定义的聚合函数 199

7.4 数据分组 199

7.4.1 GROUP BY子句 200

7.4.2 HAVING子句 204

7.4.3 总计与小计 207

7.4.4 子分组 208

7.4.5 ROLLUP子句 209

7.4.6 CUBE子句 210

7.4.7 GROUPING()函数 210

7.4.8 COMPUTE与COMPUTE BY子句 212

7.5 小结 215

7.6 习题 215

第8章 多表查询 217

8.1 理解子查询与连接 219

8.1.1 在WHERE子句中连接表 219

8.1.2 在FROM子句中连接表 220

8.1.3 连接的类型 221

8.1.4 内连接 221

8.1.5 外连接 221

8.1.6 多列连接 225

8.1.7 非同等连接 226

8.1.8 特殊目的的连接运算 227

8.1.9 合并查询 234

8.2 小结 239

8.3 习题 239

第9章 高级查询与脚本 241

9.1 子查询 241

9.1.1 标量表达式 242

9.1.2 交换连接运算 244

9.1.3 互相关联的子查询 250

9.1.4 子查询业务案例 253

9.2 Common Table Expressions(CTE) 256

9.3 游标 258

9.3.1 行集(rowset)与游标操作 258

9.3.2 创建与遍历游标 259

9.4 小结 261

9.5 习题 262

第10章 数据事务 265

10.1 事务简介 265

10.1.1 事务类型 266

10.1.2 ACID测试 267

10.1.3 事务日志 267

10.1.4 记入日志的操作 268

10.2 对数据执行CRUD 268

10.2.1 添加记录 268

10.2.2 修改记录 277

10.2.3 删除记录 282

10.2.4 用MERGE命令自动完成插入、更新和删除操作 288

10.3 显式事务 290

10.4 小结 293

10.5 习题 293

第11章 高级功能 295

11.1 数据的透视 295

11.1.1 PIVOT操作符 297

11.1.2 UNPIVOT操作符 300

11.2 全文索引和近似匹配 302

11.3 Microsoft搜索服务 303

11.3.1 音索匹配 303

11.3.2 DIFFERENCE()函数 305

11.4 管理并填写目录 305

11.5 小结 317

11.6 习题 318

第12章 T-SQL编程对象 319

12.1 视图 320

12.1.1 虚表 320

12.1.2 创建视图 320

12.1.3 保护数据 331

12.1.4 隐藏复杂性 331

12.2 存储过程 334

12.2.1 用存储过程实现带参数的视图 334

12.2.2 使用参数 335

12.2.3 返回值 336

12.2.4 记录的维护 338

12.2.5 处理和引发错误 342

12.2.6 错误消息 343

12.2.7 处理业务逻辑 352

12.2.8 循环 357

12.3 用户自定义函数 359

12.3.1 标量函数 359

12.3.2 内嵌表值函数 362

12.3.3 多语句表值函数 362

12.4 事务管理 364

12.5 小结 366

12.6 习题 367

第13章 创建和管理数据库对象 369

13.1 数据定义语言 369

13.1.1 创建对象 370

13.1.2 修改对象 370

13.1.3 删除对象 370

13.1.4 对象的命名 370

13.1.5 创建DDL脚本 372

13.1.6 创建表 373

13.1.7 唯一标识符 380

13.1.8 约束 381

13.1.9 创建视图 387

13.1.10 带索引的视图 390

13.1.11 创建存储过程 391

13.1.12 CREATE FUNCTION 395

13.2 IF EXISTS 395

13.3 数据库对象的安全 396

13.3.1 管理安全性对象 397

13.3.2 数据控制语言 398

13.4 小结 398

13.5 习题 399

第14章 分析和优化查询性能 401

14.1 数据检索 401

14.2 分析查询 403

14.2.1 会话选项 404

14.2.3 图形化执行计划 415

14.3 编写高效的T-SQL(最佳实践方式) 423

14.4 小结 427

14.5 习题 428

第15章 T-SQL在应用程序与报表中的应用 429

15.1 应用程序编程模型 429

15.2 选择模型 430

15.2.1 桌面数据库应用程序 432

15.2.2 客户/服务器数据库解决方案 433

15.2.3 n层组件解决方案 436

15.2.4 Web服务器应用程序 441

15.2.5 多层Web服务解决方案 442

15.2.6 多系统集成解决方案 442

15.3 SQL Server 2008报表服务 444

15.3.1 报表服务的体系结构 444

15.3.2 SQL Server 2008报表设计器 445

15.3.3 部署报表 464

15.3.4 用报表管理器查看报表 465

15.3.5 报表数据缓存 465

15.2.6 商业智能和业务报表 466

15.3.7 报表应用程序的集成 467

15.4 小结 470

附录A 命令语法参考 473

附录B 系统变量与函数参考 493

附录C 系统存储过程参考 509

附录D 信息模式视图参考 525

附录E FileStream对象和语法 537

附录F 习题答案 541