第一部分 理论部分 3
第1章 数据库的设计 3
1.1课程内容回顾 3
1.2为什么需要规范的数据库设计 4
1.3数据库的设计及维护 7
1.3.1设计数据库的步骤 7
1.3.2数据库的维护 17
1.4绘制E—R(实体—关系)图 18
1.4.1实体关系模型 18
1.4.2如何将E—R图转化成表 23
1.5数据规范化 24
学习总结 26
理论复习 26
第2章 数据库的实现 28
2.1 T—SQL语言回顾 28
2.2使用SQL语句创建和删除数据库 29
2.1.1创建数据库 30
2.1.2删除数据库 33
2.3使用SQL语句创建和删除表 34
2.3.1创建表 34
2.3.2删除表 38
2.4使用SQL语句创建和删除约束 39
2.4.1添加约束 39
2.4.2删除约束 40
2.5使用SQL语句创建登录 41
2.5.1创建登录账户 41
2.5.2创建数据库用户 42
2.5.3向数据库用户授权 42
学习总结 45
理论复习 45
第3章 T—SQL编程 46
3.1使用变量 46
3.1.1局部变量 46
3.1.2全局变量 47
3.2输出语句 49
3.3流程控制语句 54
3.3.1 IF—ELSE条件语句 54
3.3.2 WHILE循环语句 55
3.3.3 CASE多分支语句 56
3.4批处理语句 58
3.4.1一次执行多个T—SQL语句 59
3.4.2使用GO语句分隔多个批处理语句 59
学习总结 60
理论复习 60
第4章 高级查询(1) 62
4.1简单查询 62
4.2 IN和NOT IN子查询 73
4.3 EXISTS和NOT EXISTS子查询 76
4.4 T—SQL语句的综合应用 78
学习总结 83
作业 83
第5章 高级查询(2) 84
5.1表结构介绍 84
5.2分析求解 85
5.2.1排序查询 85
5.2.2汇总查询 86
5.2.3子查询 91
学习总结 96
第6章 事务、索引和视图 98
6.1事务 98
6.1.1为什么需要事务 98
6.1.2什么是事务 99
6.1.3如何创建事务 100
6.2索引 103
6.2.1什么是索引 103
6.2.2如何创建索引 105
6.2.3删除索引 107
6.3视图 107
6.3.1什么是视图 107
6.3.2如何创建视图 108
学习总结 114
理论复习 114
第7章 存储过程 115
7.1什么是存储过程 115
7.2常用的系统存储过程 116
7.3用户定义的存储过程 120
7.3.1创建不带参数的存储过程 122
7.3.2创建带输入参数的存储过程 123
7.3.3创建带输出参数的存储过程 124
7.3.4处理错误信息 125
学习总结 127
理论复习 128
第8章 触发器 129
8.1为什么需要触发器 129
8.2什么是触发器 131
8.3如何创建触发器 132
8.3.1创建Insert触发器 134
8.3.2创建Delete触发器 135
8.3.3创建Update触发器 136
学习总结 136
理论复习 137
第9章 PowerDesigner的使用 138
9.1 PDM中涉及的基本概念 139
9.2创建PDM 140
9.3创建表 142
9.4创建列 144
9.5创建参照完整性 145
9.5.1参照 145
9.5.2参照完整性 146
9.6创建域 147
9.7创建表中的键 150
9.7.1定义主键 150
9.7.2定义外键 151
9.7.3定义候选键 151
9.8创建索引 152
9.9创建视图 154
9.10正向工程 155
9.11逆向工程 156
9.11.1定义逆向工程的重建选项 156
9.11.2从数据库SQL脚本文件逆向工程到新的PDM中 157
9.11.3从ODBC数据源逆向工程到新的PDM中 158
学习总结 159
理论复习 159
第二部分 上机部分 163
第一章练习 数据库设计 163
第一部分 指导练习(50分钟) 163
练习内容一:需求分析 163
练习内容二:绘制E—R图 166
练习内容三:将E—R图转化为表 167
第二部分 独立练习(50分钟) 169
第二章练习 数据库的实现 170
第一部分 指导练习(50分钟) 170
练习内容一:用SQL语句创建数据库和表 170
练习内容二:系统建库建表 174
第二部分 独立练习(50分钟) 177
练习内容:用SQL语句创建数据库登录 177
第三部分 扩展练习 177
练习内容 177
第三章练习 T—SQL编程 178
第一部分 指导练习(50分钟) 178
练习内容一:使用变量 178
练习内容二:使用逻辑控制语句 179
第二部分 独立练习(50分钟) 181
练习内容:使用批处理语句 181
第三部分 扩展练习 181
练习内容 181
第四章练习 高级查询(1) 183
第一部分 指导练习(50分钟) 183
练习内容一:简单子查询 183
练习内容二:IN和EXISTS子查询 186
第五章练习 高级查询(2) 188
第一部分 练习内容(100分钟) 188
练习内容一:排序查询 188
练习内容二:汇总查询 190
一、集合函数查询 190
二、分组统计查询 190
练习内容三:子查询 191
练习内容四:子查询组属测试 192
练习内容五:子查询比较测试 193
练习内容六:子查询定量测试 193
练习内容七:子查询存在测试 194
第六章练习 事务、索引和视图 196
第一部分 指导练习(50分钟) 196
练习内容一:建立事务 196
练习内容二:创建索引 197
练习内容三:创建视图 198
第二部分 独立练习(50分钟) 198
练习内容:测试建立索引对查询时间的影响 198
第三部分 扩展练习 199
练习内容 199
第七章练习 存储过程 200
第一部分 指导练习(50分钟) 200
练习内容一:创建不带参数的存储过程 200
练习内容二:创建带输入参数的存储过程 201
练习内容三:创建带输出参数的存储过程 202
第二部分 扩展练习 203
练习内容 203
第八章练习 触发器的使用 204
第一部分 指导练习(50分钟) 204
练习内容一:创建删除触发器 204
练习内容二:创建插入触发器 205
第二部分 独立练习(50分钟) 206
练习内容:更新触发器 206
第三部分 扩展练习 206
练习内容 206
第九章练习 使用PowerDesigner工具 207
第一部分 指导练习(80分钟) 207
练习内容:使用PowerDesigner建立牛耳考试系统的数据模型 207
第二部分 扩展练习 210
练习内容 210