第1章 数据库技术基础 1
1.1 数据库基础知识 1
1.1.1 信息、数据与数据管理 1
1.1.2 数据管理技术的发展 1
1.1.3 数据库、数据库管理系统、数据库系统 2
1.1.4 数据模型 4
1.1.5 数据库系统的体系结构 6
1.2 关系数据库 7
1.2.1 关系模型 7
1.2.2 关系数据理论 10
1.3 数据库设计 14
1.3.1 数据库设计的任务、特点和步骤 14
1.3.2 需求分析的任务 15
1.3.3 概念结构设计 16
1.3.4 逻辑结构设计 17
1.3.5 数据库设计案例 18
练习1 21
第2章 SQL Server 2005综述 22
2.1 SQL Server 2005概述 22
2.1.1 SQL Server的发展过程 22
2.1.2 SQL Server 2005的体系结构 23
2.1.3 SQL Server 2005的主要特性 24
2.1.4 SQL Server 2005的版本 25
2.2 SQL Server 2005的安装 26
2.2.1 SQL Server 2005安装前的准备工作 26
2.2.2 安装SQL Server 2005 28
2.2.3 升级到SQL Server 2005 35
2.2.4 SQL Server 2005安装成功的验证 37
2.3 SQL Server 2005的安全性 41
2.3.1 SQL Server 2005安全性综述 42
2.3.2 权限验证模式 43
2.3.3 数据库用户和账号 44
2.4 SQL Server 2005工具 44
2.4.1 配置SQL Server 2005服务器 45
2.4.2 注册和连接SQL Server 2005服务器 47
2.4.3 启动和关闭SQL Server 2005服务器 49
2.4.4 SQL Server 2005的常用工具 52
练习2 63
第3章 数据库的基本操作 64
3.1 SQL Server数据库的基本知识和概念 64
3.1.1 SQL Server的数据库 64
3.1.2 SQL Server的事务日志 64
3.1.3 SQL Server数据库文件及文件组 65
3.1.4 SQL Server的系统数据库 67
3.2 创建数据库 68
3.2.1 使用SQL Server管理控制台创建数据库 68
3.2.2 使用T-SQL语句创建数据库 69
3.2.3 查看数据库信息 71
3.3 管理数据库 73
3.3.1 打开数据库 73
3.3.2 修改数据库容量 74
3.3.3 更改数据库名称 78
3.3.4 删除数据库 79
3.3.5 分离数据库 80
3.3.6 附加数据库 80
3.4 应用举例 82
3.4.1 创建计算机计费系统数据库 82
3.4.2 创建选课管理信息系统数据库 83
练习3 85
第4章 表的基本操作 86
4.1 SQL Server表概述 86
4.1.1 SQL Server表的概念 86
4.1.2 SQL Server 2005数据类型 87
4.2 数据库中表的创建 89
4.2.1 使用对象资源管理器创建表 90
4.2.2 使用T-SQL语句创建表 92
4.3 修改表结构 96
4.3.1 使用对象资源管理器修改表结构 96
4.3.2 使用T-SQL语句修改表结构 96
4.4 删除表 98
4.4.1 使用对象资源管理器删除表 98
4.4.2 使用DROP TABLE语句删除表 98
4.5 添加数据 99
4.5.1 使用对象资源管理器向表中添加数据 99
4.5.2 使用INSERT语句向表中添加数据 99
4.6 查看表 100
4.6.1 查看表结构 100
4.6.2 查看表中的数据 101
4.7 应用举例 102
4.7.1 学生选课管理信息系统的各表定义及创建 102
4.7.2 计算机计费系统的各表定义及创建 106
练习4 107
第5章 数据的基本操作 108
5.1 关系运算 108
5.1.1 关系数据结构的形式化定义 109
5.1.2 关系代数 110
5.1.3 关系代数表达式应用实例 116
5.2 数据的添加、修改和删除 118
5.2.1 数据的添加 119
5.2.2 数据的修改 126
5.2.3 数据的删除 127
5.3 简单查询 129
5.3.1 完整的SELECT语句的基本语法格式 129
5.3.2 选择表中的若干列 130
5.3.3 选择表中的若干记录 131
5.3.4 对查询的结果排序 138
5.3.5 对数据进行统计 139
5.3.6 用查询结果生成新表 143
5.3.7 合并结果集 145
5.4 连接查询 147
5.4.1 交叉连接查询 147
5.4.2 等值与非等值连接查询 148
5.4.3 自身连接查询 150
5.4.4 外连接查询 150
5.4.5 复合连接条件查询 152
5.5 子查询 153
5.5.1 带有IN运算符的子查询 154
5.5.2 带有比较运算符的子查询 155
5.5.3 带有ANY或ALL运算符的子查询 156
5.5.4 带有EXISTS运算符的子查询 158
5.6 应用举例 159
练习5 162
第6章 索引及视图 164
6.1 索引的基础知识 164
6.1.1 数据存储 164
6.1.2 索引 165
6.2 索引的分类 166
6.2.1 聚集索引 166
6.2.2 非聚集索引 166
6.2.3 聚集和非聚集索引的性能比较 167
6.2.4 使用索引的原则 168
6.3 索引的操作 168
6.3.1 创建索引 168
6.3.2 查询索引信息 172
6.3.3 重命名索引 173
6.3.4 删除索引 174
6.4 索引的分析与维护 175
6.4.1 索引的分析 175
6.4.2 索引的维护 176
6.5 索引应用举例 178
6.6 视图综述 179
6.6.1 视图的基本概念 179
6.6.2 视图的作用 180
6.7 视图的操作 181
6.7.1 创建视图 181
6.7.2 修改视图 186
6.7.3 重命名视图 186
6.7.4 使用视图 187
6.7.5 删除视图 190
6.8 视图定义信息查询 191
6.8.1 使用对象资源管理器 191
6.8.2 通过执行系统存储过程查看视图的定义信息 192
6.9 加密视图 192
6.10 用视图加强数据安全性 193
6.11 视图应用举例 194
练习6 195
第7章 数据完整性 196
7.1 数据完整性的概念 196
7.2 约束的类型 197
7.3 约束的创建 198
7.3.1 创建主键约束 198
7.3.2 创建唯一约束 201
7.3.3 创建检查约束 203
7.3.4 创建默认约束 205
7.3.5 创建外键约束 206
7.4 查看约束的定义 208
7.5 删除约束 209
7.6 使用规则 210
7.7 使用默认 211
7.8 数据完整性强制选择方法 213
7.9 应用举例 213
练习7 215
第8章 SQL Server函数 216
8.1 内置函数 216
8.1.1 聚合函数 216
8.1.2 配置函数 219
8.1.3 日期和时间函数 219
8.1.4 数学函数 220
8.1.5 元数据函数 221
8.1.6 字符串函数 221
8.1.7 系统函数 222
8.1.8 排名函数 223
8.2 用户定义函数 225
8.3 标量函数 227
8.4 表值函数 229
8.5 应用举例 233
练习8 234
第9章 SQL Server程序设计 235
9.1 程序中的批处理、脚本、注释 235
9.1.1 批处理 235
9.1.2 脚本 236
9.1.3 注释 237
9.2 程序中的事务 237
9.2.1 事务概述 237
9.2.2 事务处理语句 238
9.2.3 分布式事务 240
9.2.4 锁定 240
9.3 SQL Server变量 241
9.3.1 全局变量 241
9.3.2 局部变量 243
9.4 SQL语言流程控制 245
9.4.1 BEGIN...END语句块 245
9.4.2 IF...ELSE语句 246
9.4.3 CASE结构 247
9.4.4 WAITFOR语句 249
9.4.5 PRINT语句 250
9.4.6 WHILE语句 251
9.5 应用举例 252
练习9 253
第10章 存储过程与触发器 254
10.1 存储过程综述 254
10.1.1 存储过程的概念 254
10.1.2 存储过程的类型 254
10.1.3 创建、执行、修改、删除简单存储过程 255
10.1.4 创建和执行含参数的存储过程 261
10.1.5 存储过程的重新编译 261
10.1.6 系统存储过程与扩展存储过程 262
10.1.7 案例中的存储过程 265
10.2 触发器 267
10.2.1 触发器的概念 267
10.2.2 触发器的优点 267
10.2.3 触发器的类型 268
10.2.4 DML触发器 268
10.2.5 DDL触发器 277
10.2.6 案例中的触发器 279
练习10 281
第11章 SQL Server 2005安全管理 282
11.1 SQL Server 2005安全的相关概念 282
11.1.1 登录验证 282
11.1.2 角色 283
11.1.3 许可权限 284
11.2 服务器的安全性管理 284
11.2.1 查看登录账号 284
11.2.2 创建一个登录账号 285
11.2.3 更改、删除登录账号属性 287
11.2.4 禁止登录账号 287
11.2.5 删除登录账号 288
11.3 数据库安全性管理 288
11.3.1 数据库用户 288
11.3.2 数据库角色 290
11.3.3 管理权限 292
11.4 数据备份与还原 293
11.4.1 备份和还原的基本概念 293
11.4.2 数据备份的类型 294
11.4.3 还原模式 296
11.5 备份与还原操作 296
11.5.1 数据库的备份 296
11.5.2 数据库的还原 299
11.6 备份与还原计划 300
11.7 案例中的安全 301
11.8 案例中的备份和还原操作 306
11.9 数据导出与导入 312
练习11 317
第12章 数据库与开发工具的协同使用 318
12.1 常用的数据库连接方法 318
12.1.1 ODBC 318
12.1.2 OLE DB 320
12.1.3 ADO 321
12.2 在Visual BASIC中的数据库开发 322
12.2.1 Visual BASIC简介 322
12.2.2 Visual BASIC中使用ADO数据控件连接数据库 322
12.3 在Delphi或C++Builder中的数据库开发 325
12.3.1 Delphi与C++Builder简介 325
12.3.2 C++Builder提供的SQL Server访问机制 325
12.4 ASP与SQL Server 2005的协同运用 332
12.4.1 ASP运行环境的建立 332
12.4.2 在ASP中连接SQL Server 2005数据库 332
12.4.3 ASP与SQL Server 2005数据库协同开发程序的方式 334
12.5 案例中的程序 335
12.5.1 学生信息管理 336
12.5.2 教师信息管理 338
12.5.3 学生信息查询 340
练习12 342
附录 实验指导 343
实验1 SQL Server数据库的安装 343
实验2 创建和管理数据库 344
实验3 创建和管理表 345
实验4 数据的基本操作 346
实验5 数据查询 347
实验6 索引的应用 348
实验7 视图的应用 349
实验8 数据完整性 350
实验9 函数的应用 351
实验10 SQL程序设计 352
实验11 存储过程与触发器 352
实验12 SQL Server的安全管理 353
实验13 数据库与开发工具的协同使用 354
参考文献 355