第1章 数据库概论 1
1.1 数据库发展简史 1
1.1.1 数据管理的诞生 1
1.1.2 关系数据库的由来 2
1.1.3 结构化查询语言 3
1.1.4 面向对象数据库 4
1.2 数据库系统概述 4
1.2.1 数据系统的基本概念 4
1.2.2 数据管理技术的发展 7
1.3 数据模型 11
1.3.1 数据和数据模型 11
1.3.2 概念数据模型 14
1.3.3 逻辑数据模型 17
1.4 关系模型 18
1.4.1 关系模型的数据结构与基本概念 18
4.2 关系模型的数据操作 21
1.4.3 关系模型的数据完整性约束 21
1.5 数据库系统的模式结构 23
1.5.1 三级模式结构 23
1.5.2 数据库的二级模式映像功能 26
1.5.3 数据库的二级模式映像实例 27
本章小结 28
习题1 29
第2章 关系数据库理论 32
2.1 关系模型 32
2.2 关系运算 33
2.2.1 传统的集合运算 33
2.2.2 专门的关系运算 35
2.2.3 关系运算实例 39
2.3 规范化理论 39
2.3.1 问题的提出 39
2.3.2 解决的方法 41
2.3.3 关系模式规范化 43
2.3.4 函数依赖 43
2.3.5 码 45
2.3.6 第一范式(1NF) 46
2.3.7 第二范式 48
2.3.8 第三范式 49
2.3.9 BCNF范式 50
2.3.10 关系模式分解 51
2.3.11 关系模式规范化步骤 54
2.3.12 关系模式规范化的实例 55
2.4 非规范化设计 57
本章小结 58
习题2 58
第3章 SQL Server 2014的使用 62
3.1 SQL Server 2014简介 62
3.2 SQL Server 2014的安装 67
3.2.1 硬件和软件要求 67
3.2.2 安装过程 68
3.2.3 SQL Server 2014系统数据库和用户数据库 74
3.3 SQL Server 2014常用管理工具 75
3.3.1 SQL Server配置管理器 75
3.3.2 SQL Server管理平台 77
3.3.3 SQL Server其他工具 80
本章小结 82
习题3 82
第4章 数据库与基本表的创建和管理 83
4.1 SQL Server 2014数据库结构 83
4.1.1 数据库的逻辑结构 83
4.1.2 数据库的物理结构 84
4.1.3 数据库的其他属性 86
4.2 数据库的创建与管理 86
4.2.1 创建用户数据库 86
4.2.2 修改用户数据库 91
4.2.3 分离与附加用户数据库 94
4.2.4 备份与还原用户数据库 96
4.2.5 删除用户数据库 99
4.2.6 收缩用户数据库 99
4.3 基本表的创建与管理 103
4.3.1 数据类型 103
4.3.2 创建表 107
4.3.3 修改表 115
4.3.4 删除表 115
4.3.5 数据库完整性的实现 116
4.3.6 表中数据的维护 126
4.4 表索引的创建和管理 127
4.4.1 表索引的相关概念 127
4.4.2 管理索引 131
4.5 导入导出数据 134
本章小结 136
习题4 137
过程考核1——数据库和数据表的创建 139
第5章 数据库设计和建模工具 141
5.1 数据库设计概述 141
5.1.1 数据库设计的任务和内容 141
5.1.2 数据库设计的基本步骤 142
5.2 系统需求分析 144
5.2.1 需求分析的任务 145
5.2.2 需求分析的方法 146
5.3 概念结构设计 147
5.3.1 概念模型的特点 147
5.3.2 概念结构设计的方法和步骤 148
5.4 逻辑结构设计 151
5.4.1 逻辑结构设计的任务和步骤 151
5.4.2 E-R图转化为关系模型 152
5.4.3 数据模型的优化 156
5.5 物理结构设计 157
5.5.1 确定物理结构 157
5.5.2 评价物理结构 159
5.6 数据库的实施与维护 159
5.6.1 数据库实施 159
5.6.2 数据库运行与维护 160
5.7 数据库设计实例 161
5.8 数据库建模工具ER-Studio 164
5.8.1 ER-Studio 8.0的安装 164
5.8.2 使用ER-Studio 8.0建立数据库逻辑模型 164
5.8.3 使用ER-Studio 8.0生成数据库物理模型 170
5.8.4 使用ER-Studio 8.0生成数据库 173
5.8.5 ER-Studio 8.0其他功能 176
5.9 网上玩具商店数据库 181
本章小结 185
习题5 185
过程考核2——需求分析和数据库建模 186
第6章 SQL语言 188
6.1 SQL概述 188
6.1.1 SQL语言的特点 189
6.1.2 SQL语言的组成 189
6.1.3 SQL语句的结构 190
6.1.4 常用的SQL语句 190
6.2 Transact-SQL变量 192
6.2.1 局部变量 192
6.2.2 全局变量 193
6.3 Transact-SQL语言基础 193
6.3.1 注释符(Annotation) 193
6.3.2 运算符(Operator) 193
6.3.3 通配符(Wildcard) 194
6.4 SQL Server内置函数与流程控制语句 195
6.4.1 字符串函数 195
6.4.2 日期函数 197
6.4.3 数学函数 198
6.4.4 转换数据类型函数 199
6.4.5 聚合函数 200
6.4.6 Transact-SQL流程控制语句 201
6.5 数据操纵语言(DML) 206
6.5.1 数据的插入 206
6.5.2 数据的更新 209
6.5.3 数据的删除 210
6.6 数据查询语言(DQL) 211
6.6.1 简单查询语句 213
6.6.2 用条件来筛选表中指定的行(WHERE子句) 218
6.6.3 按指定顺序显示数据(排序) 221
6.6.4 对查询的结果进行分组计算 222
6.6.5 连接查询 226
6.6.6 子查询(嵌套查询) 236
6.7 使用XML查询技术 242
6.7.1 XML查询基础 242
6.7.2 FOR XML子句 247
本章小结 253
习题6 254
过程考核3——编程基础、SQL语言 257
第7章 数据库高级对象的使用 259
7.1 视图 259
7.1.1 视图的概念 259
7.1.2 创建视图 260
7.1.3 管理视图 264
7.1.4 通过视图管理数据 265
7.1.5 索引视图 266
7.2 存储过程 267
7.2.1 存储过程的概念及优点 267
7.2.2 存储过程的类型 268
7.2.3 创建存储过程 269
7.2.4 管理存储过程 276
7.3 用户自定义函数 277
7.3.1 创建用户自定义函数 278
7.3.2 管理用户自定义函数 281
7.4 触发器 282
7.4.1 触发器的概念 282
7.4.2 DML触发器 282
7.4.3 DDL触发器 289
7.4.4 登录触发器 290
7.4.5 管理触发器 291
7.5 事务 292
7.5.1 事务的概念 292
7.5.2 事务的回滚 294
7.6 锁 296
7.6.1 锁的概念 296
7.6.2 锁的分类 299
7.6.3 隔离级别 301
7.6.4 死锁及其防止 302
7.7 游标 304
本章小结 307
习题7 308
过程考核4——数据库高级对象的使用 310
第8章 数据库系统的安全 312
8.1 概述 312
8.1.1 数据库系统的安全控制模型 312
8.1.2 数据库权限和用户分类 313
8.1.3 SQL Server的安全机制 313
8.1.4 查看和设置SQL Server的 认证模式 315
8.2 管理SQL Server登录账号 316
8.2.1 固定的服务器角色 316
8.2.2 系统的登录账号 318
8.3 管理数据库用户 322
8.3.1 数据库用户简介 322
8.3.2 数据库角色 322
8.3.3 管理数据库用户 324
8.4 管理权限 326
8.4.1 权限管理简介 326
8.4.2 权限的管理 326
8.5 SQL Server安全性管理的途径 330
8.5.1 使用视图作为安全机制 330
8.5.2 使用存储过程作为安全机制 331
本章小结 331
习题8 332
过程考核5——数据库安全 333
第9章 Oracle的使用 334
9.1 Oracle概述 334
9.2 Oracle 11 g的安装 334
9.3 Oracle的体系结构 340
9.3.1 物理存储结构 340
9.3.2 逻辑存储结构 341
9.3.3 内存结构 342
9.3.4 进程结构 343
9.4 Oracle常用工具的使用 344
9.4.1 Database Configuration Assistant 344
9.4.2 Net Configuration Assistant 346
9.4.3 Net Manager 347
9.4.4 Oracle SQL Plus工具 350
9.4.5 Oracle OEM 351
9.4.6 Oracle SQL Developer 353
本章小结 356
习题9 356
第10章 MySQL的使用 357
10.1 MySQL概述 357
10.2 MySQL的安装 358
10.3 MySQL的使用 362
10.4 使用可视化工具管理MySQL数据库 365
本章小结 367
习题10 367
附录 习题参考答案 368
参考文献 372