第1章 SQL Server 2005概貌 1
1.1 工作目标 1
1.1.1 终极目标 1
1.1.2 促成目标 1
1.2 工作任务 1
1.3 工作任务1:使用“长江家俱”系统 2
1.3.1 系统简述 2
1.3.2 系统功能模块 2
1.3.3 登录 2
1.3.4 注销 5
1.3.5 设置基础数据 5
1.3.6 管理系统信息 9
1.3.7 管理库存信息 11
1.3.8 管理入库信息 12
1.3.9 管理出库信息 15
1.3.10 退货管理 15
1.4 工作任务2:了解“在线书店系统”数据库 16
1.5 工作任务3:了解数据处理技术发展及数据库 16
1.5.1 数据、信息与数据处理 17
1.5.2 数据处理的发展 17
1.5.3 数据库系统的组成 21
1.6 工作任务4:了解SQL Server 2005数据库管理系统 21
1.6.1 SQL Server 2005数据平台 22
1.6.2 SQL Server 2005管理工具 24
能力(知识)梳理 28
能力训练 29
第2章 设计数据库 30
2.1 总体目标 30
2.1.1 终极目标 30
2.1.2 促成目标 30
2.2 工作任务 31
2.3 工作任务1:定义实体及属性 31
2.3.1 “入库管理”功能的基本需求 31
2.3.2 数据流程图 31
2.3.3 数据字典 32
2.3.4 确定实体及其属性 33
2.4 工作任务2:设计E-R图 36
2.4.1 局部关系描述 36
2.4.2 整体E-R图描述 41
2.5 工作任务3:设计关系模型 42
2.5.1 第一种转换模式 42
2.5.2 第二种转换模式 43
2.6 工作任务4:规范化关系模型 46
2.6.1 Ⅰ范式 47
2.6.2 Ⅱ范式 47
2.6.3 Ⅲ范式 48
能力(知识)梳理 48
能力训练 50
第3章 创建数据库和数据表 51
3.1 工作目标 51
3.1.1 终极目标 51
3.1.2 促成目标 51
3.2 工作任务 52
3.3 工作任务1:创建长江家俱系统数据库 52
3.3.1 使用Microsoft SQL Server Management Studio创建数据库 52
3.3.2 使用Transact-SQL语句创建数据库(CREATE DATABASE) 57
3.4 工作任务2:修改数据库 59
3.4.1 使用Microsoft SQL Server Management Studio修改数据库 59
3.4.2 使用Transact-SQL语句修改数据库(ALTER DATABASE) 62
3.5 工作任务3:删除数据库 64
3.5.1 使用Microsoft SQL Server Management Studio删除数据库 64
3.5.2 使用Transact-SQL语句删除数据库(DROP DATABASE) 65
3.6 工作任务4:创建数据表 65
3.6.1 使用Microsoft SQL Server Management Studio创建数据表 65
3.6.2 使用Transact-SQL语句创建数据表(CREATE TABLE) 69
3.7 工作任务5:修改数据表 72
3.7.1 使用Microsoft SQL Server Management Studio修改数据表 72
3.7.2 使用Transact-SQL语句修改数据表(ALTER TABLE) 76
3.8 工作任务6:删除数据表 77
3.8.1 使用Microsoft SQL Server Management Studio删除数据表 77
3.8.2 使用Transact-SQL语句删除数据表(DROP TABLE) 78
能力(知识)梳理 79
能力训练 80
第4章 查询信息 82
4.1 工作目标 83
4.1.1 终极目标 83
4.1.2 促成目标 83
4.2 工作任务 83
4.3 工作任务1:查询基本信息 83
4.3.1 查询所有产品情况 84
4.3.2 查询员工信息 86
4.4 工作任务2:选择查询信息 89
4.4.1 查询入库单信息 90
4.4.2 修改查询结果中的列标题 91
4.4.3 查询结果中增加字符串列 92
4.5 工作任务3:根据条件查询信息 93
4.5.1 用比较运算符查询工资信息 94
4.5.2 用like运算符查询信息 99
4.5.3 用between...and组成条件查询信息 102
4.5.4 用in组成条件查询 104
4.5.5 查询某字段没有赋值的记录 105
4.6 工作任务4:查询并排序信息 107
4.6.1 查询并排序产品 108
4.6.2 多字段排序查工资 110
4.6.3 查询有限条记录信息 111
4.6.4 查询一定比例记录信息 112
4.7 工作任务5:查询并统计信息 113
4.7.1 查询工资并汇总总工资 113
4.7.2 分组查询工资并汇总总工资 115
4.8 工作任务6:分组查询信息 116
4.8.1 分组查询汇总工资 116
4.8.2 对分组后结果查询 118
4.9 工作任务7:用子查询查询信息 123
4.9.1 查询具有某权限的角色 124
4.9.2 查找不是系统管理员的用户 126
4.9.3 查询“半成品”信息 126
4.9.4 查询“半成品”和“产成品”信息 127
4.9.5 查询总工资小于平均总工资的职工 130
4.10 工作任务8:多表查询信息 131
4.10.1 查询各产品及分类信息 131
4.10.2 查询“产品分类名称”为“原材料”的产品及分类信息 135
4.10.3 用“join”实现查询各产品及分类信息 136
能力(知识)梳理 137
能力训练 138
第5章 添加、修改和删除记录 142
5.1 工作目标 144
5.1.1 终极目标 144
5.1.2 促成目标 144
5.2 工作任务 144
5.3 工作任务1:向“仓库表”中添加数据 144
5.3.1 添加数据到所有字段 144
5.3.2 添加数据到部分字段 146
5.3.3 添加默认值给字段 148
5.3.4 添加批量数据给数据表 150
5.3.5 添加批量数据给新建数据表 151
5.4 工作任务2:修改“产品表”中数据 153
5.4.1 直接修改“产品表”中数据 153
5.4.2 根据入库单明细修改“产品表”中数据 155
5.5 工作任务3:删除“员工表”中数据 158
能力(知识)梳理 160
能力训练 161
第6章 创建视图与索引 163
6.1 工作目标 163
6.1.1 终极目标 163
6.1.2 促成目标 163
6.2 工作任务 163
6.3 工作任务1:设计“产品信息”视图 164
6.3.1 功能要求 164
6.3.2 设计步骤 165
6.3.3 运行结果 168
6.4 工作任务2:设计“产品入库明细视图”视图 169
6.4.1 功能要求 169
6.4.2 设计步骤 170
6.4.3 运行结果 172
6.5 工作任务3:设计“IX产品数量”索引 173
6.5.1 功能要求 173
6.5.2 设计步骤 174
6.5.3 运行结果 176
能力(知识)梳理 179
能力训练 179
第7章 保证数据完整性 180
7.1 工作目标 181
7.1.1 终极目标 181
7.1.2 促成目标 181
7.2 工作任务 181
7.3 工作任务1:创建主键 181
7.4 工作任务2:创建外键 183
7.5 工作任务3:创建默认值 185
7.6 工作任务4:创建规则 186
7.7 工作任务5:创建约束 187
7.8 工作任务6:创建触发器 188
能力(知识)梳理 188
能力训练 189
第8章 编写批处理 190
8.1 工作目标 191
8.1.1 终极目标 191
8.1.2 促成目标 191
8.2 工作任务 191
8.3 工作任务1:原材料入库批处理 191
8.4 工作任务2:用户密码修改批处理 196
能力(知识)梳理 199
能力训练 201
第9章 设计与管理存储过程 202
9.1 总体目标 202
9.1.1 终极目标 202
9.1.2 促成目标 203
9.2 工作任务 203
9.3 工作任务1:创建与执行存储过程 203
9.3.1 创建密码修改存储过程 203
9.3.2 密码修改存储过程执行 206
9.4 工作任务2:管理存储过程 209
9.4.1 查看存储过程 209
9.4.2 修改存储过程 212
9.4.3 删除存储过程 214
9.4.4 修改存储过程名称 214
能力(知识)拓展 217
能力训练 219
第10章 设计用户定义数据类型与用户定义函数 221
10.1 工作目标 221
10.1.1 终极目标 221
10.1.2 促成目标 221
10.2 工作任务 221
10.3 工作任务1:设计“产品数量”用户定义数据类型 222
10.3.1 功能要求 222
10.3.2 设计步骤 222
10.3.3 运行结果 223
10.4 工作任务2:设计“单据状态”用户定义数据类型 224
10.4.1 功能要求 224
10.4.2 设计步骤 224
10.4.3 运行结果 226
10.5 工作任务3:设计“getDateNoTime”用户定义函数 228
10.5.1 功能要求 228
10.5.2 设计步骤 228
10.5.3 运行结果 230
10.6 工作任务4:设计“getPy”用户定义函数 231
10.6.1 功能要求 231
10.6.2 设计步骤 231
10.6.3 运行结果 233
10.7 能力扩展——用T-SQL语句定义数据类型和函数 234
10.7.1 户定义数据类型 234
10.7.2 用户定义函数 234
能力(知识)梳理 236
能力训练 236
第11章 设计触发器与游标 237
11.1 工作目标 237
11.1.1 终极目标 237
11.1.2 促成目标 237
11.2 工作任务 237
11.3 工作任务1:设计“trg_客户”触发器 238
11.3.1 功能要求 238
11.3.2 设计步骤 238
11.3.3 运行结果 240
11.4 工作任务2:设计“trg_删除员工”触发器 242
11.4.1 功能要求 242
11.4.2 设计步骤 243
11.4.3 运行结果 243
11.5 工作任务3:设计“资金往来”存储过程 244
11.5.1 功能要求 244
11.5.2 设计步骤 245
11.5.3 运行结果 249
能力(知识)梳理 252
能力训练 253
第12章 应用CLR集成 254
12.1 工作目标 254
12.1.1 终极目标 254
12.1.2 促成目标 254
12.2 工作任务 254
12.3 工作任务1:使用CLR编写存储过程“Hello” 255
12.3.1 功能要求 255
12.3.2 设计步骤 255
12.3.3 运行结果 259
12.4 工作任务2:使用CLR编写用户定义函数“MD5” 261
12.4.1 功能要求 261
12.4.2 设计步骤 261
12.4.3 运行结果 262
能力(知识)梳理 263
能力训练 263
第13章 安全管理 264
13.1 工作目标 265
13.1.1 终极目标 265
13.1.2 促成目标 265
13.2 工作任务 265
13.3 工作任务1:创建登录用户 266
13.3.1 建立登录用户 266
13.3.2 用新用户登录系统 274
13.4 工作任务2:创建数据库操作用户 276
13.4.1 创建数据库操作用户 276
13.4.2 用新用户登录系统 280
13.5 工作任务3:设置用户操作权限 282
13.5.1 面句单一用户的操作权限设置 282
13.5.2 面向数据库对象的权限设置 289
13.6 工作任务4:创建和管理角色 290
13.6.1 管理服务器角色 290
13.6.2 创建和管理数据库角色 293
能力(知识)梳理 300
能力训练 301
第14章 管理与维护数据库 302
14.1 工作目标 302
14.1.1 终极目标 302
14.1.2 促成目标 302
14.2 工作任务 303
14.3 工作任务1:备份及还原“长江家俱”数据库 303
14.3.1 备份“长江家俱”数据库 303
14.3.2 还原“长江家俱”数据库 306
14.4 工作任务2:导入、导出数据 308
14.4.1 导出数据到Excel文件 308
14.4.2 从Excel导入数据 312
14.5 工作任务3:监视服务器性能和活动 312
14.6 工作任务4:事务日志 315
14.7 工作任务5:自动化管理 318
14.8 工作任务6:执行作业 322
14.9 工作任务7:响应事件 325
能力(知识)梳理 327
能力训练 327
附录 安装SQL Server 2005 328
参考文献 339