第1章 数据库基础 1
1.1 数据库系统的基本概念 2
1.2 概念模型 4
1.2.1 概念模型中的基本概念 4
1.2.2 E-R模型的图形化描述 6
1.3 关系数据模型 7
1.3.1 关系数据模型的基本概念 8
1.3.2 关系数据库的基础理论 9
1.4 概念模型向关系数据模型的转换 13
1.5 数据库应用系统开发的实施过程 14
1.5.1 项目计划时期 15
1.5.2 开发时期 16
1.5.3 运行与维护时期 17
1.6 本章小结 18
1.7 习题 18
第2章 SQL Server概述 19
2.1 SQL Server 2005概述 20
2.1.1 SQL Server 2005的组成架构 20
2.1.2 SQL Server 2005的新特性 21
2.2 SQL Server 2005编程环境 23
2.2.1 SQL Server 2005的版本选择 23
2.2.2 Management Studi0 24
2.2.3 查询编辑器编写代码 25
2.2.4 SQL脚本代码的执行 30
2.3 SQL Server 2005的编程对象 31
2.4 本章小结 33
2.5 习题 33
第3章 T-SQL语言基础 35
3.1 T-SQL语言简介 36
3.2 T-SQL对象 37
3.2.1 对象标识符 37
3.2.2 对象的层次结构 38
3.2.3 对象的同义词 39
3.3 数据类型 40
3.3.1 系统数据类型 40
3.3.2 自定义数据类型 45
3.4 变量 45
3.4.1 局部变量 45
3.4.2 全局变量 47
3.5 函数 47
3.5.1 聚合函数 48
3.5.2 数学函数 49
3.5.3 字符串函数 49
3.5.4 日期时间函数 51
3.5.5 数据类型转换函数 52
3.5.6 系统函数 53
3.5.7 自定义函数 54
3.6 运算符与表达式 54
3.6.1 运算符 54
3.6.2 表达式 56
3.6.3 运算符的优先级 56
3.6.4 通配符 57
3.6.5 注释 57
3.7 T-SQL语句 57
3.7.1 数据定义、操纵、控制语句 57
3.7.2 流程控制语句 59
3.8 批处理 65
3.9 本章小结 67
3.10 习题 67
第4章 数据库和表的设计 69
4.1 数据库 70
4.1.1 文件和文件组 70
4.1.2 建立数据库 71
4.1.3 修改数据库 74
4.1.4 删除数据库 75
4.2 表 76
4.2.1 基本表的设计 76
4.2.2 建立表 78
4.2.3 修改表结构 82
4.2.4 删除表 83
4.3 数据完整性 83
4.3.1 域完整性 83
4.3.2 实体完整性 91
4.3.3 参照完整性 95
4.3.4 用户定义完整性 98
4.4 本章小结 98
4.5 习题 98
第5章 数据查询与更新 101
5.1 数据更新 102
5.1.1 表中插入数据 102
5.1.2 修改表中数据 103
5.1.3 删除表中数据 104
5.2 数据查询 105
5.2.1 SELECT语句的结构 106
5.2.2 简单查询 106
5.2.3 条件查询 112
5.2.4 查询排序 121
5.2.5 存储查询结果 122
5.2.6 查询中使用统计函数 124
5.2.7 汇总查询 126
5.2.8 连接查询 131
5.2.9 子查询 135
5.2.10 联合查询 140
5.3 事务 141
5.3.1 事务概念 141
5.3.2 事务语句 142
5.3.3 事务与批处理 144
5.4 锁 145
5.4.1 锁的概念 145
5.4.2 锁的分类 146
5.4.3 查看锁的信息 147
5.4.4 死锁及其防止 147
5.5 本章小结 147
5.6 习题 148
第6章 索引、视图与游标 151
6.1 索引 152
6.1.1 索引的基本概念 152
6.1.2 创建索引 153
6.1.3 删除索引 156
6.1.4 索引优化 157
6.2 视图 157
6.2.1 视图的概念 157
6.2.2 创建视图 158
6.2.3 修改视图 161
6.2.4 删除视图 162
6.2.5 通过视图更新数据 162
6.2.6 索引视图 164
6.3 游标 165
6.3.1 游标定义 165
6.3.2 游标分类 166
6.3.3 声明游标 167
6.3.4 打开游标 168
6.3.5 读取游标 168
6.3.6 游标关闭 169
6.3.7 游标删除 170
6.3.8 游标应用实例 170
6.4 本章小结 173
6.5 习题 173
第7章 存储过程与自定义函数 175
7.1 存储过程 176
7.1.1 存储过程的概念 176
7.1.2 使用存储过程的意义 176
7.1.3 创建存储过程 177
7.1.4 执行存储过程 183
7.1.5 管理存储过程 187
7.1.6 存储过程中的错误处理 189
7.1.7 CLR存储过程 193
7.2 自定义函数 195
7.2.1 自定义函数的基本概念 196
7.2.2 自定义函数的类型 196
7.2.3 创建与使用用户自定义函数 197
7.2.4 自定义函数的管理 200
7.3 本章小结 202
7.4 习题 202
第8章 触发器 205
8.1 触发器基础 206
8.2 触发器分类 207
8.3 创建触发器 208
8.3.1 创建INSERT触发器 210
8.3.2 创建UPDATE触发器 213
8.3.3 创建DELETE触发器 214
8.3.4 创建DDL触发器 215
8.4 管理触发器 216
8.4.1 查看触发器信息 216
8.4.2 修改触发器 217
8.4.3 禁用与启用触发器 217
8.4.4 删除触发器 218
8.5 触发器的嵌套与递归 218
8.6 本章小结 219
8.7 习题 219
第9章 数据库管理编程 221
9.1 SQL Server的安全性策略 222
9.1.1 用户身份认证 222
9.1.2 SQL Server数据库用户 223
9.1.3 权限管理 223
9.1.4 角色管理 225
9.2 备份与还原数据库 226
9.2.1 备份数据库 226
9.2.2 还原数据库 227
9.3 分离与附加数据库 228
9.4 导入与导出数据 230
9.4.1 大容量复制程序(bcp)命令 230
9.4.2 批量数据导入命令(BULK INSERT) 231
9.4.3 打开行集函数OPENROWSET() 231
9.5 本章小结 232
9.6 习题 232
第10章 SQL Server与XML技术 233
10.1 XML技术概述 234
10.1.1 XML的主要特点 234
10.1.2 XML技术简介 234
10.2 XML架构与类型化 236
10.2.1 XML架构集的管理 237
10.2.2 XML的类型化 238
10.2.3 XML实例化 238
10.3 XML数据类型方法 239
10.3.1 QUERY方法 240
10.3.2 VALUE方法 240
10.3.3 EXIST方法 241
10.3.4 MODIFY方法 241
10.3.5 NODES方法 242
10.4 使用FOR XML子句 243
10.4.1 使用FOR XML AUTO模式 243
10.4.2 使用FOR XML RAW模式 243
10.4.3 使用FOR XML EXPLICIT 245
10.4.4 使用FOR XML PATH 245
10.4.5 使用TYPE指令 246
10.4.6 嵌套的FOR XML查询 246
10.5 使用OPENXML函数构造表 247
10.6 XML索引 248
10.7 本章小结 249
10.8 习题 249
第11章 图书管理系统开发实例 251
11.1 利用VC 6.0进行数据库系统开发概述 252
11.1.1 VC 6.0数据库开发的特点 252
11.1.2 VC 6.0数据库访问技术 252
11.2 ODBC操作SQL Server 2005数据库 253
11.2.1 ODBC数据源的创建 253
11.2.2 连接ODBC数据源 255
11.2.3 创建记录集对象 255
11.2.4 CRecordSet操作记录集的方法 256
11.2.5 SQL语句的直接执行 257
11.3 图书借阅管理系统分析与设计 258
11.3.1 系统登录 259
11.3.2 基本信息管理 260
11.3.3 借书还书管理 266
11.3.4 缴纳罚款管理 274
11.3.5 读者借书查询的实现 277
11.4 本章小结 279
11.5 习题 279
第12章 远程教学网站开发实例 281
12.1 ASP技术简介 282
12.1.1 ASP运行环境的安装与配置 282
12.1.2 ASP运行模型 283
12.1.3 使用脚本语言 284
12.1.4 ASP页面的创建 284
12.1.5 ASP内建对象 284
12.2 ASP中访问SQL Server数据库 285
12.2.1 创建数据源 285
12.2.2 连接数据库 286
12.2.3 用Connection对象执行查询 287
12.2.4 使用Recordset对象处理结果 288
12.2.5 检索记录 288
12.2.6 用Command对象改善查询 289
12.2.7 结合HTML表格和数据库访问 291
12.2.8 管理数据库连接 291
12.2.9 使连接超时 292
12.2.10 使用跨页连接 292
12.2.11 关闭连接 292
12.3 远程教学网站分析与设计 293
12.3.1 远程教学网站的功能分析与设计 293
12.3.2 远程教学网站数据库分析与设计 294
12.4 远程教学网站各模块的数据操作 300
12.4.1 数据库连接文件 300
12.4.2 网站首页 300
12.4.3 资料显示模块 307
12.4.4 资料管理模块 319
12.4.5 教师管理模块 330
12.5 本章小结 347
12.6 习题 347
参考文献 348