《SQL Server 2008数据库应用开发基础》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:微软公司著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2010
  • ISBN:9787115233424
  • 页数:402 页
图书介绍:本书为学生提供实现Microsoft SQL Server 2008数据库所需要的知识和技能。本课程将着重教授学生如何使用SQL Server 2008产品中与实现数据库相关的功能和工具。

第1章 数据库基础 1

1.1 数据库基础 1

1.1.1 数据与数据库 1

1.1.2 表、行、列和约束 2

1.1.3 在Microsoft SQL Server2008中创建表 4

1.1.4 创建表的步骤小结 7

1.1.5 设置列属性和约束 7

1.1.6 关系 8

1.1.7 其他SQL Server 2008数据库对象 14

1.2 SQL Server 2008概述 15

1.2.1 SQL Server 2008简介 15

1.2.2 SQL Server 2008的应用方式 16

1.2.3 SQL Server 2008的版本 17

1.2.4 SQL Server 2008的组件 17

1.2.5 SQL Server 2008管理工具 17

1.2.6 SQL Server 2008数据库引擎组件 20

1.2.7 SQL Server 2008的软硬件需求 21

第2章 T-SQL入门 22

2.1 T-SQL基础 22

2.1.1 T-SQL语句的种类 22

2.1.2 T-SQL查询工具 23

2.1.3 使用查询编辑器输入和运行T-SQL代码 24

2.2 T-SQL快速入门 25

2.2.1 创建数据库 25

2.2.2 创建表 25

2.2.3 插入和更新数据 26

2.2.4 读取表中的数据 27

2.2.5 创建登录名 28

2.2.6 授予访问数据库的权限 29

2.2.7 创建视图和存储过程 29

2.2.8 授予访问数据库对象的权限 30

2.2.9 删除数据库对象 31

2.3 Transact-SQL语法要素 32

2.3.1 批处理命令 32

2.3.2 注释语句 33

2.3.3 标识符 34

2.3.4 数据类型 35

2.3.5 变量 35

2.3.6 几个常用的系统函数 36

2.3.7 运算符 41

2.3.8 表达式 43

2.3.9 流控制的语言元素 43

2.3.10 保留的关键字 45

第3章 创建数据库和数据库文件 46

3.1 创建数据库 46

3.1.1 SQL Server数据库类型 46

3.1.2 数据库的文件组成 47

3.1.3 数据存储 47

3.1.4 创建数据库的注意事项 48

3.1.5 事务日志 49

3.1.6 数据库选项 51

3.1.7 数据压缩 51

3.1.8 演示:创建数据库 52

3.2 创建文件组 53

3.2.1 文件组 53

3.2.2 使用文件组提高数据库性能 54

3.2.3 演示:创建文件组 57

3.3 创建架构 57

3.3.1 架构 57

3.3.2 对象名称解析的工作方式 59

3.3.3 演示:创建架构 60

3.4 创建数据库快照 61

3.4.1 数据库快照的工作方式 61

3.4.2 何时使用数据库快照 62

3.4.3 演示:创建数据库快照 63

3.5 实验:创建数据库和数据库文件 63

3.5.1 实验3-1:创建数据库 64

3.5.2 实验3-2:创建架构 64

3.5.3 实验3-3:创建数据库快照 65

3.5.4 关闭虚拟机 65

3.6 习题 66

第4章 创建数据类型和表 67

4.1 创建数据类型 67

4.1.1 系统提供的数据类型 67

4.1.2 使用系统提供的数据类型 68

4.1.3 别名数据类型 69

4.1.4 演示:创建数据类型 70

4.2 创建表 71

4.2.1 SQL Server在行中如何组织数据 71

4.2.2 SQL Server如何组织大数据值 72

4.2.3 表的类型 73

4.2.4 创建表的注意事项 75

4.2.5 生成Transact-SQL脚本 76

4.2.6 演示:创建表 77

4.3 创建已分区表 78

4.3.1 已分区表 78

4.3.2 分区函数 79

4.3.3 分区方案 81

4.3.4 可对分区数据执行的操作 81

4.3.5 演示:创建已分区表 84

4.4 实验:创建数据类型和表 85

4.4.1 实验4-1:创建数据类型 85

4.4.2 实验4-2:使用新的日期和时间数据类型 86

4.4.3 实验4-3:创建表 86

4.4.4 实验4-4:创建已分区表 87

4.4.5 关闭虚拟机 87

4.5 习题 88

第5章 使用Transact-SQL查询数据库 91

5.1 检索数据 91

5.1.1 使用SELECT语句检索数据 91

5.1.2 使用WHERE子句 92

5.1.3 设置结果集格式 99

5.2 数据分组与汇总 102

5.2.1 使用TOP n列出前n个记录 102

5.2.2 使用聚合函数 103

5.2.3 GROUP BY的基础知识 105

5.2.4 联合使用 GROUP BY子句和HAVING子句 107

5.2.5 在结果集中生成汇总值 109

5.2.6 使用COMPUTE和COMPUTE BY子句 112

5.2.7 推荐操作 114

5.3 多表联接 114

5.3.1 使用表的别名 114

5.3.2 组合多个表中的数据 115

5.3.3 推荐操作 126

5.4 子查询 126

5.4.1 子查询介绍 126

5.4.2 把子查询用作派生表 127

5.4.3 把子查询用作表达式 128

5.4.4 使用子查询关联数据 128

5.4.5 推荐操作 133

5.5 修改数据 133

5.5.1 使用事务 133

5.5.2 插入数据 134

5.5.3 删除数据 137

5.5.4 更新数据 140

5.5.5 性能考虑 142

5.5.6 推荐操作 142

5.6 习题 142

第6章 创建和优化索引 145

6.1 规划索引 145

6.1.1 SQL Server如何访问数据 145

6.1.2 堆 146

6.1.3 聚集索引 148

6.1.4 非聚集索引 149

6.2 创建索引 151

6.2.1 创建索引概述 151

6.2.2 唯一索引 153

6.2.3 创建多列索引的注意事项 154

6.2.4 何时创建计算列的索引 155

6.2.5 已分区索引 155

6.2.6 在索引中并入可用空间的选项 156

6.2.7 获取索引信息的方法 157

6.2.8 演示:创建索引 158

6.3 优化索引 158

6.3.1 数据库引擎优化顾问 159

6.3.2 演示:使用数据库引擎优化顾问 159

6.3.3 索引碎片 160

6.3.4 索引碎片整理选项 162

6.3.5 演示:索引碎片整理 163

6.4 实验:创建和优化索引 163

6.4.1 实验6-1:创建索引 163

6.4.2 实验6-2:优化索引 164

6.4.3 关闭虚拟机 164

6.5 习题 164

第7章 使用约束和触发器实现数据完整性 168

7.1 数据完整性概述 168

7.1.1 数据完整性类型 168

7.1.2 强制数据完整性的选项 169

7.2 实现约束 170

7.2.1 约束 170

7.2.2 键约束 171

7.2.3 其他约束 173

7.2.4 级联引用完整性 175

7.2.5 约束检查注意事项 176

7.2.6 演示:创建约束 178

7.3 实现触发器 179

7.3.1 触发器 179

7.3.2 INSERT触发器的工作方式 181

7.3.3 DELETE触发器的工作方式 182

7.3.4 UPDATE触发器的工作方式 183

7.3.5 INSTEAD OF触发器的工作方式 184

7.3.6 嵌套触发器工作方式 185

7.3.7 递归触发器的注意事项 186

7.3.8 演示:创建触发器 187

7.4 实验:使用约束和触发器实现数据完整性 187

7.4.1 实验7-1:创建约束 187

7.4.2 实验7-2:禁用约束 188

7.4.3 实验7-3:创建触发器 189

7.4.4 关闭虚拟机 190

7.5 习题 190

第8章 使用XML 193

8.1 使用XML数据类型 193

8.1.1 XML 193

8.1.2 XML数据类型 194

8.1.3 Query、Value和Exist方法 195

8.1.4 Modify方法 196

8.1.5 Nodes方法 196

8.1.6 演示:使用XML数据类型 197

8.2 使用FOR XML检索XML 199

8.2.1 FOR XML子句简介 199

8.2.2 RAW模式查询 201

8.2.3 AUTO模式查询 203

8.2.4 EXPLICIT模式查询 205

8.2.5 PATH模式查询 207

8.2.6 检索嵌套XML的语法 208

8.2.7 演示:使用FOR XML 209

8.3 使用OPENXML分解XML 210

8.3.1 分解XML数据概述 210

8.3.2 管理内存中节点树的存储过程 211

8.3.3 OPENXML语法 213

8.3.4 处理XML命名空间的语法 215

8.3.5 演示:使用OPENXML分解XML 216

8.4 实验:使用XML 217

8.4.1 实验8-1:映射关系数据和XML 217

8.4.2 实验8-2:将XML本机存储在数据库中 221

8.5 XQuery简介 223

8.5.1 XQuery 223

8.5.2 XQuery基础知识 224

8.5.3 XQuery表达式 225

8.5.4 演示:使用XQuery 表达式 225

8.6 创建XML索引 226

8.6.1 XML索引 226

8.6.2 XML索引的优点 226

8.6.3 XML索引的类型 227

8.6.4 演示:创建XML索引 228

8.7 实现XML架构 229

8.7.1 XML架构 230

8.7.2 XML架构验证 232

8.7.3 XML架构集合 232

8.7.4 类型化和非类型化XML 234

8.7.5 演示:使用类型化XML 235

8.8 实验:使用XML 235

8.8.1 实验8-3:结合XML方法使用XQuery 236

8.8.2 实验8-4:创建XML索引 237

8.8.3 关闭虚拟机 238

8.9 习题 238

第9章 实现视图 243

9.1 视图简介 243

9.1.1 视图 243

9.1.2 视图类型 244

9.1.3 视图的优点 246

9.2 创建和管理视图 246

9.2.1 创建视图的语法 246

9.2.2 演示:创建视图 248

9.2.3 更改和删除视图的语法 249

9.2.4 视图加密 251

9.2.5 所有权链如何影响视图 252

9.2.6 视图信息来源 253

9.2.7 在视图中修改数据的注意事项 254

9.3 使用视图优化性能 255

9.3.1 视图的性能注意事项 255

9.3.2 索引视图的性能注意事项 256

9.3.3 分区视图 257

9.4 实验:实现视图 258

9.4.1 实验9-1:创建视图 258

9.4.2 实验9-2:创建索引视图 259

9.4.3 实验9-3:创建分区视图 260

9.4.4 关闭虚拟机 261

9.5 习题 261

第10章 实现存储过程 265

10.1 使用存储过程 265

10.1.1 什么是存储过程 265

10.1.2 创建存储过程的语法 267

10.1.3 创建存储过程的准则 271

10.1.4 演示:创建存储过程 272

10.1.5 更改存储过程的语法 273

10.1.6 删除存储过程的语法 274

10.1.7 演示:更改和删除存储过程 275

10.1.8 演示:切换执行上下文 275

10.2 创建带参数的存储过程 277

10.2.1 存储过程参数 277

10.2.2 演示:创建带参数的存储过程 280

10.2.3 表值参数 281

10.2.4 演示:使用表值参数 282

10.3 处理执行计划 283

10.3.1 执行计划 283

10.3.2 查看执行计划 284

10.3.3 执行计划缓存 285

10.3.4 查询编译 287

10.3.5 强制存储过程重新编译 288

10.3.6 演示:使用执行计划 288

10.4 处理异常 289

10.4.1 结构化异常处理的语法 289

10.4.2 异常处理准则 290

10.4.3 演示:处理异常 291

10.5 实验:实现存储过程 292

10.5.1 实验10-1:创建存储过程 292

10.5.2 实验10-2:处理执行计划 294

10.5.3 关闭虚拟机 294

10.6 习题 295

第11章 实现函数 297

11.1 函数简介 297

11.1.1 函数类型 297

11.1.2 标量函数 298

11.1.3 内联表值函数 299

11.1.4 多语句表值函数 300

11.1.5 演示:创建函数 302

11.2 使用函数 302

11.2.1 确定性函数和非确定性函数 303

11.2.2 创建函数的准则 304

11.2.3 将存储过程重写为函数 304

11.3 控制执行上下文 305

11.3.1 执行上下文 305

11.3.2 EXECUTE AS子句 307

11.3.3 扩展模拟上下文 308

11.4 实验:实现函数 310

11.4.1 实验11-1:创建函数 310

11.4.2 实验11-2:控制执行上下文 313

11.4.3 关闭虚拟机 316

11.5 习题 316

第12章 在数据库中实现托管代码 318

12.1 SQL Server公共语言运行时简介 318

12.1.1 .NET Framework简介 318

12.1.2 .NET公共语言运行时 324

12.1.3 托管代码的优点 325

12.1.4 CLR托管代码数据库对象 325

12.1.5 托管代码和Transact-SQL 326

12.2 导入和配置程序集 326

12.2.1 程序集 327

12.2.2 程序集信任级别 327

12.2.3 导入程序集的语法 328

12.2.4 演示:导入和配置程序集 328

12.3 创建托管数据库对象 329

12.3.1 托管数据库对象概述 329

12.3.2 托管存储过程、触发器和函数 330

12.3.3 托管聚合和用户定义类型 330

12.3.4 演示:创建托管数据库对象 331

12.4 实验:在数据库中实现托管代码 332

12.4.1 实验12-1:导入程序集 333

12.4.2 实验12-2:创建托管数据库对象 333

12.4.3 关闭虚拟机 335

12.5 习题 335

第13章 管理事务和锁 337

13.1 事务和锁概述 337

13.1.1 事务 337

13.1.2 锁 338

13.1.3 并发控制 339

13.1.4 演示:介绍事务 340

13.2 管理事务 341

13.2.1 自动提交事务 341

13.2.2 显式事务 342

13.2.3 隐式事务 345

13.2.4 事务恢复 347

13.2.5 使用事务的注意事项 348

13.2.6 受限语句 349

13.3 理解SQL Server锁定体系结构 350

13.3.1 可通过锁防止的并发问题 350

13.3.2 可锁定资源 351

13.3.3 锁类型 352

13.3.4 锁兼容性 354

13.4 管理锁 355

13.4.1 会话级锁定选项 355

13.4.2 锁升级 357

13.4.3 动态锁定 357

13.4.4 死锁 358

13.4.5 查看锁定信息的方法 359

13.4.6 演示:查看锁定信息 360

13.5 实验:管理事务和锁 361

13.5.1 实验13-1:使用事务 361

13.5.2 实验13-2:管理锁 362

13.5.3 关闭虚拟机 363

13.6 习题 363

第14章 使用Service Broker 366

14.1 Service Broker概述 366

14.1.1 Service Broker 366

14.1.2 Service Broker系统体系结构 367

14.1.3 Service Broker会话体系结构 368

14.1.4 Service Broker会话过程 369

14.1.5 Service Broker会话优先级 371

14.1.6 Service Broker安全体系架构 374

14.1.7 Management Studio增强功能 376

14.2 创建Service Broker对象 376

14.2.1 启用Service Broker 377

14.2.2 外部激活支持 378

14.2.3 创建消息类型的语法 379

14.2.4 创建约定的语法 381

14.2.5 创建队列的语法 383

14.2.6 创建服务的语法 387

14.2.7 演示:创建Service Broker对象 388

14.3 发送和接收消息 389

14.3.1 发送消息的语法 389

14.3.2 接收消息的语法 392

14.3.3 演示:发送和接收消息 395

14.3.4 发送/接收消息的诊断工具 396

14.4 实验:使用Service Broker 397

14.4.1 实验14-1:创建Service Broker对象 397

14.4.2 实验14-2:实现起始服务 399

14.4.3 实验14-3:实现目标服务 400

14.4.4 关闭虚拟机 401

14.5 习题 401