第1章 关系数据库系统基础 1
1.1 数据库技术概述 1
1.2 数据库发展简史 1
1.3 基本概念 2
1.3.1 数据 2
1.3.2 数据库 3
1.3.3 数据库管理系统 3
1.3.4 数据库系统 3
1.4 数据库系统模型和结构 4
1.4.1 层次模型 4
1.4.2 网状模型 5
1.4.3 关系模型 6
1.5 数据库管理系统 8
1.6 关系数据库的范式理论 9
1.6.1 数据依赖 10
1.6.2 关系模式的操作异常 10
1.6.3 范式 11
1.7 EAR方法 16
1.7.1 EAR图 16
1.7.2 EAR方法向关系数据库转换 17
习题一 19
1.8 小结 19
2.1 SQL Server发展历程 20
2.2 SQL Server 2000简介 20
第2章 认识SQL Server 2000 20
2.2.1 SQL Server 2000的各种版本 21
2.2.2 SQL Server 2000特性 22
2.2.3 功能革新和领先领域 23
2.3 SQL Server的有关基本概念 23
2.4 安全性 25
2.5 数据库和数据库对象 26
2.6.1 硬件平台 29
2.6 选购服务器硬件 29
2.6.2 操作系统 30
2.6.3 微处理器 31
2.6.4 内存 33
2.6.5 硬盘空间 34
2.6.6 磁带备份 35
2.6.7 网络设备 35
2.6.8 RAID方法 35
2.7.1 文件系统的选择 36
2.6.9 不间断电源 36
2.7 配置Windows 2000/Windows NT 36
2.7.2 不使用NFTS压缩 37
2.8 小结 37
习题二 37
第3章 开始使用SQL Server 2000 38
3.1 实用程序概述 38
3.2 控制台 38
3.2.1 企业管理器控制台 39
3.2.2 SQL Server的企业管理器功能 41
3.3 SQL Server代理服务 57
3.4 查询分析器 59
3.4.1 查询分析器简介 59
3.4.2 配置查询分析器 60
3.4.3 设置查询视图选项 62
3.4.4 使用查询方格 63
3.4.5 分析查询执行方案 63
3.4.6 分析索引 65
3.5 英文查询 65
3.6 向导 66
3.8 小结 67
3.7 其他管理工具 67
习题三 68
第4章 Transact-SQL语言基础 69
4.1 Transact-SQL语言概述 69
4.2 示例数据库介绍 70
4.3 标识符 71
4.3.1 常规标识符 71
4.3.2 定界标识符 73
4.3.3 标识符应用 76
4.4 语法格式约定 79
4.5 数据类型 80
4.5.1 系统数据类型 80
4.5.2 自定义数据类型 89
4.5.3 数据类型优先级 91
4.6 运算符 92
4.6.1 算术运算符 92
4.6.2 位运算符 92
4.6.3 比较运算符 93
4.6.4 逻辑运算符 93
4.6.6 赋值运算符 98
4.6.5 字符串连接符 98
4.6.7 运算符优先顺序 99
4.7 变量 100
4.7.1 全局变量 100
4.7.2 局部变量 105
4.8 流控制语句 106
4.8.1 BEGIN...END语句 107
4.8.2 IF...ELSE...语句 108
4.8.3 WHILE、BREAK、CONTINUE语句 109
4.8.5 RETURN语句 110
4.8.4 WAITFOR语句 110
4.8.6 CASE表达式 112
4.9 函数 113
4.9.1 系统函数 114
4.9.2 日期函数 119
4.9.3 字符串函数 120
4.9.4 数学函数 122
4.9.5 元数据函数 123
4.9.6 图像和文本函数 123
4.9.7 安全函数 124
4.9.8 聚合函数 125
4.9.9 游标函数 126
4.9.10 行集函数 127
4.10 批处理 130
4.11 小结 131
习题四 131
第5章 表、视图与索引 132
5.1 表和索引的物理存储结构 132
5.2.1 建立数据表 133
5.2 表 133
5.2.2 修改表 139
5.2.3 检索表定义信息 141
5.2.4 删除表 142
5.3 约束 142
5.3.1 数据完整性分类 143
5.3.2 DEFAULT约束 143
5.3.3 CHECK约束 144
5.3.4 PRIMARY KEY约束 145
5.3.5 UNIQUE约束 147
5.3.6 FOREIGN KEY约束 147
5.4.1 插入数据 149
5.4 表数据操作 149
5.4.2 数据修改 152
5.4.3 删除数据 155
5.5 索引 157
5.5.1 索引类型 158
5.5.2 建立索引 159
5.5.3 删除索引 162
5.6 全文索引 163
5.6.1 全文操作存储过程 164
5.6.2 全文索引应用 168
5.7 视图 169
5.7.1 建立视图 169
5.7.2 修改和删除视图 177
5.7.3 视图的应用 178
5.8 小结 179
习题五 179
第6章 数据查询 180
6.1 数据查询概述 180
6.2 简单查询 181
6.2.1 选择列表 182
6.2.2 使用FROM子句 186
6.2.3 在聚合查询中指定WHERE条件 189
6.2.4 查询结果排序 194
6.3 统计 195
6.3.1 GROUP BY子句 195
6.3.2 COMPUTE子句 198
6.4 创建查询结果表 200
6.5 联合查询 201
6.6 联接 202
6.6.1 内联接 203
6.6.2 外联接 204
6.6.3 交叉联接 206
6.6.4 自联接 207
6.7 子查询 207
6.7.1 [NOT]IN子查询 209
6.7.2 [NOT]EXISTS子查询 211
6.7.3 比较子查询 212
6.7.4 相关子查询 214
6.7.5 查询设计器表示联接的方式 215
6.8 全文查询 216
6.8.1 CONTAINS 217
习题六 219
6.8.2 FREETEXT 219
6.9 小结 219
第7章 系统设定和规则 221
7.1 系统设定和规则概述 221
7.2 系统设定 221
7.2.1 创建系统设定对象 221
7.2.2 系统设定的应用 222
7.2.3 删除系统设定对象 224
7.3 规则 224
7.3.1 创建规则 225
7.3.2 规则的应用 226
7.3.3 删除规则 227
7.4 小结 228
习题七 228
第8章 存储过程 229
8.1 存储过程概述 229
8.1.1 基本概念 229
8.1.2 优点 230
8.2 存储过程类型 231
8.2.1 系统存储过程 231
8.2.2 临时存储过程 231
8.2.3 远程存储过程 232
8.3 创建存储过程 233
8.3.1 使用CREATE PROCEDURE语句 233
8.2.4 扩展存储过程 233
8.3.2 使用向导创建存储过程 235
8.3.3 使用企业管理器创建存储过程 237
8.3.4 存储过程的信息 238
8.3.5 创建存储过程的规则 238
8.4 存储过程的设计与执行 239
8.5 修改存储过程 241
8.7 存储过程调用 242
8.6 执行存储过程 242
8.7.1 过程参数传递 243
8.7.2 过程的返回值 244
8.7.3 过程的自动执行 244
8.8 存储过程中使用参数 245
8.8.1 使用输入参数 245
8.8.2 用输入参数执行存储过程 246
8.8.3 用输出参数返回值 247
8.9 删除存储过程 248
习题八 249
8.10 小结 249
第9章 触发器 250
9.1 触发器概述 250
9.1.1 创建触发器 250
9.1.2 触发器限制 259
9.1.3 触发器所产生的临时表 261
9.1.4 触发器嵌套调用 262
9.2 修改和删除触发器 262
9.3.1 INSERT触发器 264
9.3 触发器应用举例 264
9.3.2 UPDATE触发器 266
9.3.3 DELETE触发器 267
9.4 小结 268
习题九 268
第10章 ODBC简介 269
10.1 ODBC的结构 269
10.1.1 应用程序 269
10.1.2 数据源管理器 270
10.1.3 数据库驱动程序 270
10.2.1 查看系统安装的数据库驱动程序 273
10.2 ODBC数据源管理 273
10.2.2 建立数据源 274
10.2.3 重新配置或删除数据源 278
10.2.4 建立ODBC函数调用日志 278
10.3 ODBC数据类型 279
10.4 ODBC接口一致性 280
10.4.1 接口函数一致性 281
10.4.2 属性一致性 283
10.4.3 描述符字段一致性 285
10.5 ODBC应用程序结构 286
10.6 ODBC游标 289
10.6.1 ODBC游标类型 289
10.6.2 查看系统对游标的支持能力 291
10.6.3 游标命名 293
10.6.4 关闭游标 294
10.7 小结 294
习题十 295
第11章 连接数据源 296
11.1 申请和释放句柄 296
11.1.1 申请句柄 296
11.1.2 释放句柄 297
11.2.1 设置环境属性 298
11.2 属性设置 298
11.2.2 设置连接属性 300
11.2.3 设置语句属性 304
11.2.4 检索环境、连接和语句属性设置 307
11.3 连接驱动程序和数据源 308
11.3.1 用SQLConnect函数连接数据源 309
11.3.2 用SQLDriverConnect函数建立连接 309
11.3.3 用SQLDriverConnect函数建立连接 312
11.4.1 查找系统已建立的ODBC数据源 315
11.3.4 断开与数据源的连接 315
11.4 检索系统驱动程序和数据源信息 315
11.4.2 查找系统所安装的驱动程序 316
11.5 查看驱动程序和数据源的支持能力 317
11.5.1 确定驱动程序支持的ODBC API函数 317
11.5.2 检查数据源所支持的数据类型 319
11.5.3 确定驱动程序和数据源的支持能力 321
11.6 错误诊断 322
11.6.1 ODBC函数返回码 323
11.6.2 诊断记录 323
11.6.3 读取ODBC诊断信息 325
11.7 小结 327
习题十一 328
第12章 执行SQL语句 329
12.1 SQL语句执行方式 329
12.1.1 立即执行 329
12.1.2 准备执行 331
12.2 ODBC函数执行方式 333
12.2.1 函数执行方式设置 334
12.3.1 SQL语句构造 335
12.3 SQL语句参数传递 335
12.2.2 取消函数的异步执行操作 335
12.3.2 执行前传递参数 337
12.3.3 传递参数数组 339
12.3.4 执行传递参数 343
12.4 检索SQL语句及参数信息 345
12.4.1 检索语句参数数量 345
12.4.2 检索参数详细信息 346
12.4.3 查看SQL语句的本地文本格式 346
12.5.3 结束事务 347
12.5.2 启动事务 347
12.5.1 控制事务 347
12.5 事务处理 347
12.5.4 指定事务边界 348
12.5.5 事务处理过程中的错误 348
12.5.6 显式事务 348
12.5.7 隐性事务 349
12.5.8 自动提交事务 349
12.5.9 编译和运行时错误 350
12.5.10 COMMIT TRANSACTION 351
12.5.11 事务恢复 352
12.5.12 回滚个别事务 353
12.5.13 启动时恢复所有未完成的事务 353
12.5.14 回滚事务 354
12.5.15 存储过程和触发器中回滚 355
12.6 小结 357
习题十二 357
第13章 应用实例 358
13.1 创建 358
13.1.1 创建数据库 358
13.1.3 创建函数 359
13.1.2 创建默认数据库 359
13.1.4 创建索引 360
13.1.5 创建过程 361
13.1.6 创建角色 361
13.1.7 创建计划 361
13.1.8 创建表 361
13.1.9 创建触发器 362
13.1.10 创建视图 362
13.2.1 创建数据库备份 363
13.2 备份 363
13.2.2 重新启动数据库 364
13.3 OLE DB 364
13.4 ODBC 370
13.4.1 追加数据源 370
13.4.2 删除数据源 371
13.4.3 连接ODBC 371
13.4.4 结果处理 372
13.4.5 错误处理 373
13.5 小结 376
习题十三 377