第1章 数据库基础 1
1.1 数据库与数据库系统 1
1.1.1 数据库 1
1.1.2 数据库管理系统 1
1.1.3 数据库系统 2
1.2 数据模型 3
1.2.1 概念数据模型 3
1.2.2 结构化数据模型 5
1.2.3 关系数据库管理系统 6
1.3 关系规范化设计 10
1.3.1 关系中的异常 10
1.3.2 函数依赖 12
1.3.3 范式理论 13
1.3.4 注意事项 15
1.4 数据库设计 15
1.4.1 数据库设计概述 15
1.4.2 数据结构设计 17
1.4.3 数据结构设计工具软件 21
1.4.4 数据结构设计实例 22
1.5 SQL Server 2012入门 28
1.5.1 SQL Server 2012系统简介 28
1.5.2 SQL Server 2012的安装 29
1.5.3 SQL Server 2012的使用 32
本章 小结 33
习题1 34
实训1 在线电子商店的设计 34
第2章 数据库和表的创建与维护 38
2.1 创建和管理数据库 38
2.1.1 数据库常用对象 38
2.1.2 数据库的组成 39
2.1.3 系统数据库 40
2.1.4 创建数据库 40
2.1.5 修改数据库 43
2.1.6 删除数据库 44
2.2 创建和管理数据表 45
2.2.1 数据表的设计 45
2.2.2 数据类型 45
2.2.3 创建数据表 47
2.2.4 数据完整性约束 49
2.2.5 修改数据表 54
2.2.6 删除数据表 56
2.3 索引 56
2.3.1 索引的概念 56
2.3.2 索引的类型 57
2.3.3 创建索引 58
2.3.4 管理索引 59
本章 小结 60
习题2 61
实训2 在线电子商店数据库和表的创建 62
第3章 数据操纵 64
3.1 数据插入语句 64
3.1.1 使用Values关键字的Insert语句 64
3.1.2 使用Select子句的Insert语句 65
3.1.3 数据插入中的完整性约束 66
3.2 数据更新语句 67
3.2.1 数据更新基本语句 67
3.2.2 数据更新中的完整性约束 68
3.3 数据删除语句 69
3.3.1 Delete语句 69
3.3.2 Truncate语句 69
3.3.3 数据删除中的完整性约束 69
本章 小结 70
习题3 70
实训3 在线电子商店的数据初始化 71
第4章 数据查询 75
4.1 数据查询语句的基本结构 75
4.2 简单查询 75
4.2.1 Select…From子句 75
4.2.2 Where子句 78
4.2.3 Order By子句 81
4.2.4 Group By子句 82
4.2.5 联合查询 85
4.3 连接查询 86
4.3.1 交叉连接 86
4.3.2 内连接与等值连接 87
4.3.3 外连接 90
4.3.4 自连接 94
4.4 子查询 95
4.4.1 嵌套子查询 95
4.4.2 相关子查询 100
4.5 基于数据查询的数据操纵 103
4.5.1 联合使用Select和Insert语句 103
4.5.2 联合使用Select和Update语句 104
4.5.3 联合使用Select和Delete语句 105
本章 小结 105
习题4 106
实训4 在线电子商店数据库的查询 107
第5章 数据库编程 110
5.1 变量与流程控制语句 110
5.1.1 变量 110
5.1.2 流程控制语句 113
5.2 脚本文件 117
5.2.1 SQL脚本文件的概念 117
5.2.2 批处理 118
5.2.3 注释 118
5.3 游标 119
5.3.1 游标的概念 119
5.3.2 游标的基本操作 120
5.3.3 使用游标更新数据 123
5.4 视图 124
5.4.1 视图的概念 124
5.4.2 创建视图 125
5.4.3 使用视图查询数据 127
5.4.4 修改视图 128
5.4.5 删除视图 128
5.4.6 视图的应用 128
5.5 函数 132
5.5.1 标准函数(内置函数) 132
5.5.2 自定义函数 134
5.5.3 自定义函数的维护 139
5.6 事务和锁 139
5.6.1 事务 139
5.6.2 锁机制 143
5.6.3 丢失更新 148
5.7 存储过程 152
5.7.1 存储过程的概念 152
5.7.2 系统存储过程 153
5.7.3 用户自定义存储过程 154
5.7.4 管理存储过程 159
5.8 触发器 160
5.8.1 触发器的基本概念 161
5.8.2 创建DML触发器 161
5.8.3 创建DDL触发器 168
5.8.4 管理触发器 168
本章 小结 169
习题5 171
实训5 在线电子商店数据库的编程 172
第6章 数据库安全管理 179
6.1 安全体系结构 179
6.1.1 客户机操作系统的安全管理 179
6.1.2 SQL Server服务器的安全管理 180
6.1.3 数据库的安全管理 180
6.1.4 数据库对象的安全管理 180
6.2 客户机安全认证 181
6.2.1 创建Windows用户 181
6.2.2 客户机身份验证 182
6.3 服务器安全认证 183
6.3.1 建立服务器登录账号 184
6.3.2 设置账号的服务器角色 189
6.3.3 管理与使用登录账号 190
6.4 数据库安全认证 192
6.4.1 创建数据库用户 192
6.4.2 维护数据库用户 193
6.5 数据库对象安全认证 195
6.5.1 角色管理 196
6.5.2 权限管理 198
本章 小结 204
习题6 205
实训6 在线电子商店数据库的安全管理 205
第7章 数据库维护 207
7.1 数据库的分离与附加 207
7.1.1 数据库的分离 207
7.1.2 数据库的附加 208
7.2 备份与恢复 209
7.2.1 常见数据库故障 209
7.2.2 数据库备份设备 209
7.2.3 备份方式 210
7.2.4 恢复模式 210
7.2.5 备份与恢复方案 212
7.2.6 数据库备份与恢复 213
7.2.7 建立自动备份的维护计划 217
7.3 数据转换 220
7.3.1 数据转换的基本概念 220
7.3.2 数据的导出 221
7.3.3 数据的导入 223
7.4 数据库的日常维护操作 224
7.4.1 数据库的创建与维护 225
7.4.2 数据表的创建与维护 227
7.4.3 约束的创建与维护 230
7.4.4 索引的创建与维护 233
本章 小结 233
习题7 234
实训7 在线电子商店数据库的维护 235
第8章 数据库开发案例——图书借阅管理系统 236
8.1 开发环境与开发工具 236
8.2 系统需求分析 237
8.2.1 总体需求 237
8.2.2 业务分析 238
8.2.3 非功能性需求 238
8.2.4 功能分析 238
8.3 数据结构设计 239
8.3.1 结构分析 239
8.3.2 物理数据模型设计 239
8.3.3 数据字典 240
8.4 数据库实施 242
8.4.1 生成数据库 242
8.4.2 数据初始化 245
8.4.3 数据查询核对 248
8.5 数据库应用程序编制 249
8.5.1 ADO.NET数据库编程接口 249
8.5.2 数据库连接通用模块 255
8.5.3 C/S结构程序设计 259
8.5.4 B/S结构程序设计 273
8.6 数据库开发案例小结 278
附录 279
附录A 学生成绩管理系统数据表结构 279
附录B 在线电子商店数据表结构 281
附录C SQL常用函数 283
附录D Jitor实训指导软件使用说明 287
参考文献 292