第1章 数据库概述 1
1.1 订单管理系统概述 1
1.2 数据库基本原理概述 2
1.2.1 数据库管理技术发展 2
1.2.2 数据模型 3
1.2.3 关系数据库 4
1.3 订单管理系统数据库设计 4
1.3.1 数据库设计概述 4
1.3.2 实体-联系模型(ER图) 5
1.3.3 关系模型 7
1.3.4 关系数据库标准语言 11
1.3.5 关系模型的规范化 12
习题 14
第2章 SQL Server 2008概述 15
2.1 SQL Server 2008简介 15
2.1.1 SQL Server 2008的发展及特性 15
2.1.2 SQL Server 2008的环境要求 17
2.2 SQL Server 2008的安装 23
2.2.1 SQL Server 2008的应用环境设计 23
2.2.2 SQL Server 2008的身份验证模式 23
2.2.3 SQL Server 2008的安装 24
2.3 SQL Server 2008的管理工具 32
习题 35
第3章 管理数据库 36
3.1 SQL Server 2008数据库概念 36
3.1.1 数据库文件分类 36
3.1.2 页 37
3.1.3 数据库文件组 38
3.2 系统数据库及其表 39
3.3 创建数据库 40
3.3.1 创建数据库应具备的条件 41
3.3.2 在图形界面下创建数据库 41
3.3.3 用SQL命令创建数据库 44
3.3.4 事务日志 46
3.3.5 查看数据库信息 47
3.4 管理和维护数据库 49
3.4.1 打开数据库 49
3.4.2 增减数据库空间 50
3.4.3 数据库选项的设定与修改 53
3.4.4 更改数据库名称 54
3.4.5 查看SQL Server上共有几个数据库 54
3.4.6 删除数据库 55
习题 55
第4章 管理数据表 57
4.1 表的基本概念 57
4.1.1 订单管理中的数据要求 57
4.1.2 数据表的三个键 58
4.2 创建表 58
4.2.1 使用图形界面创建表 59
4.2.2 使用CREATE TABLE语句创建表 61
4.3 表中的数据类型 63
4.4 表的管理和维护 64
4.4.1 查看表的定义信息 65
4.4.2 修改表 66
4.4.3 删除表 68
4.4.4 查看表之间的依赖关系 69
4.5 表数据的添加、修改和删除 70
4.5.1 向表中添加数据 70
4.5.2 修改表中的数据 72
4.5.3 删除表中的数据 73
4.6 使用约束 74
4.6.1 主键(PRIMARY KEY)约束 74
4.6.2 唯一键(UNIQUE)约束 75
4.6.3 检查(CHECK)约束 76
4.6.4 默认值(DEFAULT)约束 77
4.6.5 外键(FOREIGN KEY)约束 78
4.6.6 级联参照完整性约束 80
4.7 标识列IDENTITY 82
习题 82
第5章 查询数据 84
5.1 简单SELECT语句 86
5.1.1 SELECT语句的语法格式 86
5.1.2 基本的SELECT语句 86
5.1.3 使用INTO子句 88
5.1.4 使用WHERE子句 89
5.1.5 使用ORDER BY子句 91
5.2 SELECT语句的统计功能 91
5.2.1 使用集合函数 92
5.2.2 使用GROUP BY子句 93
5.2.3 使用COMPUTE BY子句 94
5.3 SELECT语句中的多表连接 95
5.3.1 交叉连接 96
5.3.2 内连接 97
5.3.3 外连接 97
5.3.4 自连接 99
5.3.5 合并结果集 100
5.4 子查询 101
5.4.1 比较测试中的子查询 101
5.4.2 集合成员测试中的子查询 101
5.4.3 存在性测试中的子查询 101
5.4.4 批量比较测试中的子查询 102
5.4.5 使用子查询向表中添加多条记录 102
5.5 使用SQL Server Management Studio进行数据查询与维护 103
5.5.1 查询设计器简介 103
5.5.2 查询设计器的应用实例 104
习题 106
第6章 视图和索引 108
6.1 视图的基本概念 108
6.1.1 视图的基本概念 108
6.1.2 视图的优点和缺点 110
6.2 视图的创建和查询 110
6.2.1 在SQL Server Management Studio下创建视图 111
6.2.2 使用CREATE VIEW创建视图 113
6.2.3 视图数据的查询 114
6.3 视图的维护 115
6.3.1 查看视图的定义信息 115
6.3.2 查看视图与其他对象的依赖关系 116
6.3.3 修改视图 117
6.3.4 删除视图 119
6.4 通过视图修改表数据 120
6.5 索引概述 120
6.5.1 SQL Server 2008中数据的存储与访问 121
6.5.2 索引的作用 121
6.5.3 索引的分类 122
6.6 创建索引 123
6.6.1 系统自动创建索引 123
6.6.2 在图形界面下创建索引 125
6.6.3 使用CREATE INDEX语句创建索引 126
6.7 管理和维护索引 127
6.7.1 查看和修改索引信息 127
6.7.2 删除索引 128
6.7.3 索引的分析与维护 129
习题 133
第7章 Transact-SQL编程 134
7.1 批处理、脚本和注释 134
7.1.1 批处理 134
7.1.2 脚本 135
7.1.3 注释 136
7.2 常量和变量 136
7.2.1 常量 136
7.2.2 局部变量 137
7.2.3 全局变量 139
7.3 系统函数 140
7.3.1 字符串函数 140
7.3.2 日期函数 142
7.3.3 系统综合函数 143
7.3.4 数学函数 147
7.3.5 元数据函数 148
7.3.6 安全函数 149
7.3.7 行集函数 150
7.3.8 游标函数 150
7.3.9 配置函数 151
7.3.10 文本和图像函数 152
7.4 流程控制语句 152
7.4.1 BEGIN...END语句块 153
7.4.2 IF...ELSE语句 153
7.4.3 CASE表达式 154
7.4.4 WAITFOR语句 156
7.4.5 WHILE语句 156
7.4.6 其他语句 156
7.5 用户自定义函数 157
7.5.1 基本概念 157
7.5.2 创建用户自定义函数 157
7.5.3 修改和删除用户自定义函数 161
7.6 游标及其应用 162
7.6.1 声明游标 162
7.6.2 打开游标 163
7.6.3 从游标中获取数据 164
7.6.4 关闭游标 167
7.6.5 释放游标 167
习题 167
第8章 存储过程 168
8.1 存储过程的概念 168
8.1.1 基本概念 168
8.1.2 存储过程的优点 169
8.2 建立和执行存储过程 169
8.2.1 创建和执行简单存储过程 169
8.2.2 执行字符串 171
8.3 存储过程中参数的使用 172
8.3.1 带输入参数的存储过程 172
8.3.2 带输出参数的存储过程 174
8.3.3 通过RETURN返回参数 176
8.4 存储过程的管理与维护 178
8.4.1 查看存储过程的定义信息 178
8.4.2 存储过程的重编译 178
8.4.3 重新命名存储过程 179
8.4.4 修改和删除存储过程 180
8.5 系统存储过程和扩展存储过程 180
8.5.1 系统存储过程 180
8.5.2 扩展存储过程 181
习题 181
第9章 触发器 183
9.1 触发器的概念 183
9.1.1 基本概念 183
9.1.2 使用触发器的优点 183
9.2 创建和应用触发器 184
9.2.1 INSERT触发器 185
9.2.2 UPDATE触发器 188
9.2.3 DELETE触发器 190
9.2.4 查看触发器的定义信息 191
9.3 修改和删除触发器 192
9.3.1 修改和删除触发器 192
9.3.2 禁止或启用触发器 193
9.4 触发器的嵌套与递归 194
9.4.1 嵌套触发器 194
9.4.2 递归触发器 195
9.5 事务 195
9.5.1 基本概念 195
9.5.2 事务应用 196
习题 198
第10章 SQL Server 2008的安全管理 199
10.1 SQL Server 2008的安全特性 199
10.2 SQL Server 2008的安全机制 200
10.2.1 SQL Server 2008访问控制 201
10.2.2 SQL Server 2008身份验证模式 201
10.3 服务器的安全性 202
10.3.1 创建或修改登录账户 202
10.3.2 禁止或删除登录账户 205
10.3.3 服务器角色 206
10.4 数据库的安全性 207
10.4.1 添加数据库用户 207
10.4.2 修改数据库用户 209
10.4.3 删除数据库用户 210
10.5 数据库用户角色 211
10.5.1 固定的数据库角色 211
10.5.2 自定义的数据库角色 211
10.5.3 增删数据库角色的成员 213
10.6 架构管理 214
10.6.1 添加数据库架构 214
10.6.2 删除数据库架构 215
10.6.3 修改数据库用户的默认架构 216
10.7 权限管理 217
10.7.1 权限的种类 217
10.7.2 权限的管理 217
习题 225
第11章 数据备份与恢复 226
11.1 备份与恢复的基本概念 226
11.1.1 备份数据库的时机 226
11.1.2 备份与恢复的方式 227
11.2 备份数据库 229
11.2.1 使用SQL Server Management Studio备份数据库 229
11.2.2 创建备份设备 232
11.2.3 使用SQL语句备份数据库 233
11.3 恢复数据库 234
11.3.1 恢复数据库前的准备 235
11.3.2 使用SQL Server Management Studio恢复数据库 236
11.3.3 使用SQL语句恢复数据库 239
11.4 直接复制文件的备份与恢复 241
11.5 数据的导入导出 244
11.5.1 SQL Server 2008与Excel的数据格式转换 244
11.5.2 SQL Server 2008与Access的数据格式转换 250
习题 252
第12章 订单管理系统开发 253
12.1 ADO.NET组件 253
12.1.1 Connection对象 253
12.1.2 Command对象 255
12.1.3 DataSetCommand对象 256
12.1.4 DataSet对象 256
12.1.5 DataReader对象 256
12.2 订单管理系统的设计 256
12.2.1 订单管理系统架构设计 256
12.2.2 订单管理系统功能设计 257
12.2.3 订单管理系统数据库设计 258
12.3 B/S模式下系统的实现 262
12.3.1 数据库公用模块的编写 262
12.3.2 系统功能模块实现 262
习题 268
第13章 实训 269
13.1 实训1 安装并配置SQL Server 2008 269
13.2 实训2 通过SQL语句建立数据库 269
13.3 实训3 通过两个表的建立验证数据完整性 270
13.4 实训4 销售业绩的统计 271
13.5 实训5 通过外键和自定义数据类型保证完整性 271
13.6 实训6 视图对保证数据安全性和完整性的作用 272
13.7 实训7 掌握索引的应用 272
13.8 实训8 自定义函数和游标的结合 273
13.9 实训9 建立存储过程查看供应商的产品 273
13.10 实训10 通过触发器实现级联修改 274
13.11 实训11 使用SQL Server Management Studio管理安全性 274
13.12 实训12 建立一个数据库的日常备份方案 275
13.13 实训13 为网上订单管理建立一个客户注册功能 276