第1章 SQL Server 2008概述和安装 1
1.1 SQL Server的历史和发展 1
1.1.1 SQL Server的历史 1
1.1.2 SQL Server的版本 3
1.2 SQL Server 2008的安装 8
1.2.1 下载SQL Server 2008试用版 8
1.2.2 安装SQL Server 2008的硬件和软件要求 10
1.2.3 如何安装SQL Server 2008 15
1.3 SQLServer2008的管理和开发工具 28
1.3.1 SQL Server 2008管理工具一览 28
1.3.2 SQL Server 2008 Management Studio简介 30
1.3.3 SQL Server 2008配置管理器简介 32
第2章 T-SQL语言 35
2.1 SQL语言与T-SQL语言概述 35
2.1.1 SQL语言概述 35
2.1.2 T-SQL语言概述 38
2.2 案例分析:学生成绩信息表的增删改查 40
2.3 SQL基本语法介绍 43
2.4 案例实现:学生成绩信息表的增删改查 48
2.5 T-SQL的基本语法和数据类型 50
2.5.1 T-SQL数据类型 50
2.5.2 T-SQL关键字 52
2.5.3 T-SQL内置函数 54
2.6 SQL Server 2008中T-SQL的新功能 57
2.6.1 T-SQL新增功能概述 57
2.6.2 Insert语句的增强 58
2.6.3 Merge语句 59
2.6.4 用户自定义表数据类型和表值参数 60
第3章 数据库 63
3.1 数据库概述 63
3.1.1 数据库基本概念 63
3.1.2 数据模型 65
3.2 案例分析:ABCBBS论坛系统数据库创建与管理 69
3.3 利用SQL Server 2008 Management Studio操作数据库 70
3.3.1 创建数据库 70
3.3.2 配置数据库属性 71
3.3.3 删除数据库 74
3.4 利用T-SQL脚本操作数据库 75
3.4.1 创建数据库(Create DATABASE) 75
3.4.2 配置数据库属性(Alter DATABASE) 81
3.4.3 删除数据库(Drop DATABASE) 82
3.5 数据库的管理 82
3.5.1 数据库的备份和还原 83
3.5.2 数据库自动备份的实现 86
3.5.3 数据的导入导出(DTS) 95
3.5.4 数据库的复制 99
3.5.5 数据库报表 103
3.6 SQL Server 2008的数据库文件体系结构 104
3.6.1 页和区的概念 104
3.6.2 文件和文件组体系结构 106
3.7 案例实现:ABCBBS论坛系统数据库创建与管理 107
第4章 数据表 111
4.1 数据表概述 111
4.1.1 数据表概念 111
4.1.2 数据表设计 112
4.1.3 数据表约束 113
4.1.4 数据表和视图的区别 113
4.2 案例分析:IT时代博客系统数据表的创建与管理 114
4.3 利用SQL Server 2008 Management Studio操作数据表 115
4.3.1 创建和设计数据表 116
4.3.2 添加数据表数据 117
4.3.3 删除数据表 118
4.4 利用T-SQL脚本操作数据表 118
4.4.1 创建数据表(Create TABLE) 118
4.4.2 计算列 122
4.4.3 修改数据表属性(Alter TABLE) 123
4.4.4 删除数据表(Drop TABLE) 124
4.5 特殊表类型 124
4.5.1 系统表 125
4.5.2 临时表 126
4.5.3 宽表 128
4.6 设计和实现FILESTREAM存储 128
4.6.1 FILESTREAM概述 128
4.6.2 启用FILESTREAM 130
4.6.3 创建应用FILESTREAM的数据库 131
4.6.4 创建数据表存储FILESTREAM数据 132
4.7 案例实现:IT时代博客系统数据表的创建与管理 134
第5章 约束 144
5.1 约束概述 144
5.1.1 约束的概念 144
5.1.2 约束的分类 144
5.2 案例分析:高校选课系统约束的设计与创建 151
5.3 利用SQL Server 2008 Management Studio设计约束 153
5.3.1 创建外键约束 153
5.3.2 创建检查约束 154
5.4 利用T-SQL语言设计键和约束 155
5.4.1 创建约束(Create Constraints) 155
5.4.2 删除约束(Drop Constraints) 159
5.5 案例实现:高校选课系统约束的设计与创建 160
第6章 视图 167
6.1 视图概述 167
6.1.1 视图的概念 167
6.1.2 视图的好处 168
6.2 案例分析:小管家进销存管理系统视图的创建设计与编辑 169
6.3 利用SQL Server 2008 Management Studio操作视图 171
6.3.1 创建和设计视图 171
6.3.2 编辑视图数据 175
6.3.3 删除视图 175
6.4 利用T-SQL脚本操作视图 176
6.4.1 创建视图(Create View) 176
6.4.2 修改视图(ALTER VIEW) 178
6.4.3 删除视图(DROP VIEW) 179
6.5 同义词 180
6.6 数据表连接方式 182
6.7 案例实现:小管家进销存管理系统视图的创建设计与编辑 184
第7章 存储过程 193
7.1 存储过程概述 193
7.1.1 什么是存储过程 193
7.1.2 存储过程的优势 195
7.1.3 存储过程与函数的区别 196
7.2 案例分析:IT资源管理系统存储过程的设计与编辑 199
7.3 利用图形界面向导和T-SQL操作存储过程 200
7.3.1 创建存储过程(Create Procedure) 200
7.3.2 执行存储过程(Exec) 203
7.3.3 删除存储过程(Drop Procedure) 205
7.4 有关存储过程和T-SQL脚本的17个实例 206
7.4.1 系统函数部分 206
7.4.2 语句块部分 210
7.4.3 系统变量部分 215
7.5 案例实现:IT资源管理系统存储过程的设计与编辑 217
第8章 触发器 229
8.1 触发器概述 229
8.1.1 什么是触发器 229
8.1.2 触发器的优势和局限性 231
8.2 案例分析:旅行社网上机票预订系统触发器的设计与编辑 232
8.3 利用图形界面向导和T-SQL操作触发器 238
8.3.1 创建触发器(Create Trigger) 238
8.3.2 激活/禁用触发器 240
8.3.3 删除触发器(Drop Trigger) 241
8.4 触发器脚本的高级应用 242
8.4.1 有关触发器的4个实例 242
8.4.2 触发器的完整模板 246
8.5 案例实现:旅行社网上机票预订系统触发器的设计与编辑 249
第9章 索引 261
9.1 索引概述 261
9.1.1 什么是索引 261
9.1.2 聚簇索引和非聚簇索引比较 263
9.2 案例分析:旅行社网上机票预订系统索引的设计与性能优化 265
9.3 利用图形界面向导创建索引 266
9.3.1 创建聚簇主键索引 266
9.3.2 创建非聚簇索引 267
9.3.3 创建XML索引 268
9.3.4 创建空间索引 271
9.3.5 创建索引的完整流程 273
9.4 利用T-SQL脚本创建索引 277
9.4.1 创建索引的T-SQL模板 278
9.4.2 创建索引的T-SQL脚本的8个实例 280
9.5 案例实现:旅行社网上机票预订系统索引的设计与性能优化 284
第10章 用户权限 291
10.1 用户权限概述 291
10.1.1 数据库用户 291
10.1.2 登录用户 291
10.1.3 角色 293
10.1.4 权限 295
10.1.5 架构 297
10.1.6 权限管理小结 298
10.2 案例分析:CRM客户关系管理系统数据库的权限分配 300
10.3 利用图形界面向导配置用户权限 301
10.3.1 常见数据库角色介绍 301
10.3.2 常见服务器角色介绍 303
10.3.3 创建数据库用户 304
10.3.4 创建登录用户 305
10.3.5 创建数据库角色 307
10.3.6 创建应用程序角色 308
10.4 利用T-SQL脚本配置用户权限 308
10.4.1 创建用户 309
10.4.2 创建角色 311
10.4.3 设置权限 312
10.5 案例实现:CRM客户关系管理系统数据库的权限分配 314
第11章 创建数据库自动化执行脚本 324
11.1 数据库自动化脚本的目的和意义 324
11.2 案例分析:IT管理系统数据库自动化脚本的规划与设计 325
11.3 批处理编程 327
11.3.1 什么是批处理 327
11.3.2 批处理编程基本语法 329
11.4 案例实现:IT管理系统数据库自动化脚本的规划与设计 335
第12章 数据库设计 344
12.1 案例分析:学生选课系统数据库的设计, 创建关系图,满足第一,二,三范式 344
12.2 设计数据库范式 345
12.2.1 数据库范式概述 345
12.2.2 设计数据库满足第一范式 345
12.2.3 设计数据库满足第二范式 346
12.2.4 设计数据库满足第三范式 348
12.2.5 其他范式 350
12.2.6 反范式 351
12.3 设计数据库E-R图 352
第13章 SQL Server 2008与XML 358
13.1 XML概述 358
13.1.1 XML基本概念 358
13.1.2 XML历史 360
13.1.3 XML用途 360
13.1.4 XML相关术语解释 361
13.2 案例分析:XML技术在SQL Server 2008中的各种应用 364
13.3 XML基本语法 367
13.4 XML语法校验 370
13.4.1 DTD文件校验 370
13.4.2 XML Schema文件校验 373
13.5 XPath基本语法 376
13.6 XQuery基本语法 378
13.7 在SQL Server中导入XML数据 379
13.8 XML在SQL Server中的各种应用 380
13.8.1 XML的应用范围 380
13.8.2 类型化的XML和非类型化的XMI 381
13.8.3 使用XML类型列创建视图 385
13.8.4 XML在数据查询方面的应用 386
13.9 案例实现:XML技术在SQL Server 2008中的各种应用 389
第14章 SQL Server 2008数据库性能测试及优化 396
14.1 性能测试概述 396
14.1.1 数据库性能测试与软件性能测试的关系 396
14.1.2 性能测试相关术语介绍 398
14.2 案例分析:通用销售管理系统的数据库性能优化 401
14.3 SQL Server数据库性能优化 408
14.3.1 数据库性能优化的目标和途径 408
14.3.2 硬件系统级别的优化 410
14.3.3 数据库文件级别的优化 414
14.3.4 数据库对象级别的优化 416
14.4 案例实现:通用销售管理系统的数据库性能优化 427
第15章 ETL与Integration Service 429
15.1 ETL概述 429
15.1.1 什么是ETL 429
15.1.2 ETL相关术语解释 432
15.2 什么是Integration Service 437
15.3 Integration Service体系结构 439
15.4 开发Integration Service的集成开发工具—BIDS介绍 441
15.5 使用BIDS创建DTS应用 443
15.6 使用BIDS创建ETL应用 453
15.6.1 案例分析1:ETL应用—从Excel数据源提取转换数据 453
15.6.2 案例解析2:ETL应用—从文本数据源提取转换数据 463
第16章 Reporting Services 479
16.1 Reporting Services概述 479
16.2 制作Reporting Services的常用工具 481
16.2.1 报表配置工具 481
16.2.2 使用BIDS创建报表项目 483
16.3 案例分析:制作订单数据表的报表系统 484
16.3.1 案例介绍 485
16.3.2 制作简易报表 487
16.3.3 报表的一些高级选项设置 491
16.3.4 添加饼图和条形图 496
16.3.5 添加KPI 501
第17章 Analysis Services 506
17.1 什么是多维数据 506
17.2 数据挖掘概述 508
17.2.1 什么是数据挖掘 508
17.2.2 数据挖掘的基本特征 509
17.3 数据挖掘的经典案例 511
17.4 数据挖掘的常用分析方法 514
17.5 案例分析:预测AdventureWorksCycles公司产品的顾客购买行为 515
17.5.1 案例背景介绍 515
17.5.2 示例数据库的下载与安装 517
17.5.3 创建Analysis Services项目 519
17.5.4 生成数据源和数据源视图 520
17.5.5 设计创建数据挖掘模型 524
17.5.6 数据挖掘模型的结果分析 531
17.5.7 验证数据挖掘模型的准确性 543
17.5.8 客户行为预测和整理 546
第18章 数据库试题集锦(面试必备) 551
18.1 选择题 551
18.2 简答题 563
18.3 设计题 570
18.4 参考答案 570