内 容 简 介
本书采用项目导向的形式编写,以任务为核心,由任务驱动,选择学生比较熟悉的“学生管理数据库系统”的案例来组织教学内容,通过对连贯的项目、具体任务的介绍,可以较容易地掌握相关知识并且形成系统概念,易学易会。
本书通过对学生管理数据库关系模式的设计,数据库的创建和管理,表和记录的操作,数据的查询,视图的管理等12个项目循序渐进地展开教学内容。主要介绍了学生管理数据库的创建和管理,同时也介绍了数据库的Web应用,将一个以数据库为后台数据中心的Web应用系统有序地展示在读者面前,从而帮助读者逐步实现系统分析、设计和应用数据库的能力。
本书可以作为应用型本科、高职高专以及成人教育相关课程的教材,也是一本很好的自学教材和参考书。
前 言
数据是各行各业不可或缺的信息。通过对数据的分析和处理,可以帮助企业了解公司的运营情况,并且做出相应决策。数据库技术是信息处理的基础,其应用范围广,几乎涵盖了信息技术的各个领域,是许多专业尤其是信息技术以及相关专业的重要的专业必修课程。SQL Server 2005非常成熟,非常适合初学者进行学习。
对于应用型本科和高职高专的学生,应用能力的培养居于首位。将完整的数据库技术知识体系,通过项目导向的形式,以任务为核心,来组织和安排教学内容,可以帮助学生更好地掌握数据库技术知识,具备独立开发数据库系统的能力。
以学生为本,着力培养学生的应用能力是本书编写的宗旨;以熟悉的“学生管理数据库系统”案例作为项目题材,易学易懂;基于工作过程的完整的项目案例循序渐进地展开,由浅入深,便于学生熟练掌握数据库技术的系统架构和开发流程;以任务为核心,从具体到抽象,可以帮助学生掌握坚实的数据库技术的基本理论知识和动手设计能力;启发式教学内容的安排,可以提高学生的学习兴趣,调动学习积极性。教材知识架构的安排不仅仅使学生具备数据库综合技术应用能力,同时还有助于提高创新精神和开拓能力的培养。
本书将案例分为12个项目,其中前11个项目介绍的是学生管理数据库的创建和管理,最后一个项目介绍的是该数据库的Web应用,组成一个完整的数据库应用系统。
项目一为掌握数据库基础知识:主要介绍数据库、数据管理系统和数据库系统的基本概念,以及SQL Server数据库的基本组成和有关知识。
项目二为设计数据库关系模式。主要介绍关系模型与关系数据库、数据库的设计方法及相关理论、E-R模型以及数据库设计步骤。
项目三为创建和管理数据库。主要介绍关系数据库的创建和管理,包括备份和还原等。
项目四为创建和管理数据库表。主要介绍数据库表的创建和管理,以及表数据完整性的设计等。
项目五为编辑数据库表记录,主要介绍数据库表记录的插入、更新和删除操作,以及与其他数据库和数据文件之间的数据共享。
项目六为数据查询。主要介绍基本查询、连接查询、子查询以及集合查询的知识,利用查询进行分析和统计。
项目七为创建和管理数据库视图。主要介绍视图的创建、修改和删除,以及视图的使用。
项目八为数据库编程基础。主要介绍数据类型、表达式以及流程控制语句的使用,并介绍了函数的使用和设计。
项目九为创建和管理数据库存储过程。主要介绍存储过程的知识,以及存储过程的创建、执行、修改和删除。
项目十为创建和管理触发器。主要介绍DML触发器的创建、修改以及删除等操作。
项目十一为安全管理数据库。主要介绍数据库安全管理知识,包括身份验证管理、权限管理以及角色管理。
项目十二为数据库综合应用案例。主要介绍用户页面、数据组件等的设计,以及通过页面操纵数据库。
本书由广州航海学院教师青宏燕、王宏伟任主编,参加编写的还有王琢、晁晶、潘夕琪,这些教师都有多年从事数据库课程教学的经历,教学经验丰富。本书由青宏燕拟定大纲并进行最后统稿和校稿。各位教师编写分工如下:项目一、项目二由王琢副教授编写;项目三、项目四、项目六、项目八由青宏燕完成;项目五、项目七由晁晶编写;项目九、项目十由潘夕琪完成;项目十一、项目十二由王宏伟副教授编写。参考答案由青宏燕教师汇编。
同时,在编写教材的过程中,还得到许多教师的支持和帮助,同时也参考了一些专著文献以及网上的资料,在此深表感谢!
由于编者水平所限,难免出现疏漏之处,恳请广大读者批评指正。
编 者
目 录
项目一 掌握数据库基础知识 1
任务一 学生管理数据库系统基本需求 2
【任务要求】 2
【知识储备】 3
【任务实施】 5
【任务实践】 6
任务二 数据库基础知识 7
【任务要求】 7
【知识储备】 7
【任务实施】 10
【任务实践】 10
任务三 数据库系统的结构 14
【任务要求】 14
【知识储备】 14
【任务实施】 16
【任务实践】 19
任务四 初步认识SQL Server 2005 24
【任务要求】 24
【知识储备】 24
【任务实施】 27
【任务实践】 28
【知识扩展】 36
项目小结 37
上机实训 37
习题 39
项目二 设计数据库关系模式 43
任务一 认识关系数据库 44
【任务要求】 44
【知识储备】 45
【任务实施】 52
【任务实践】 52
【知识扩展】 60
任务二 数据库设计步骤 60
【任务要求】 60
【知识储备】 60
【任务实施】 61
【任务实践】 62
任务三 使用E-R模型设计数据库模式 69
【任务要求】 69
【知识储备】 69
【任务实施】 70
【任务实践】 70
项目小结 74
上机实训 74
习题 75
项目三 创建和管理数据库 77
任务一 创建数据库 79
【任务要求】 79
【知识储备】 79
【任务实施】 82
【任务实践】 85
任务二 查看数据库 87
【任务要求】 87
【知识储备】 87
【任务实施】 87
【任务实践】 89
任务三 修改数据库 90
【任务要求】 90
【知识储备】 90
【任务实施】 91
【任务实践】 92
任务四 删除数据库 94
【任务要求】 94
【知识储备】 94
【任务实施】 94
【任务实践】 95
任务五 分离或附加数据库 95
【任务要求】 95
【知识储备】 95
【任务实施】 95
【任务实践】 98
任务六 备份或还原数据库 99
【任务要求】 99
【知识储备】 99
【任务实施】 100
【任务实践】 102
项目小结 105
上机实训 105
习题 106
项目四 创建和管理数据库表 107
任务一 创建数据库表 108
【任务要求】 108
【知识储备】 108
【任务实施】 112
【任务实践】 113
任务二 设计表数据完整性 117
【任务要求】 117
【知识储备】 117
【任务实施】 119
【任务实践】 121
任务三 修改数据库表 126
【任务要求】 126
【知识储备】 127
【任务实施】 128
【任务实践】 128
任务四 删除数据库表 131
【任务要求】 131
【知识储备】 131
【任务实施】 132
【任务实践】 132
任务五 创建和管理索引 133
【任务要求】 133
【知识储备】 133
【任务实施】 137
【任务实践】 138
项目小结 141
上机实训 141
习题 143
项目五 编辑数据库表记录 147
任务一 插入记录 148
【任务要求】 148
【知识储备】 148
【任务实施】 149
【任务实践】 151
任务二 更新记录 152
【任务要求】 152
【知识储备】 152
【任务实施】 153
【任务实践】 154
任务三 删除记录 155
【任务要求】 155
【知识储备】 155
【任务实施】 155
【任务实践】 156
任务四 数据的导入和导出 157
【任务要求】 157
【知识储备】 157
【任务实施】 157
【任务实践】 165
项目小结 168
上机实训 168
习题 169
项目六 数据查询 171
任务一 基本查询 173
【任务要求】 173
【知识储备】 173
【任务实施】 180
【任务实践】 184
任务二 连接查询 189
【任务要求】 189
【知识储备】 189
【任务实施】 192
【任务实践】 194
任务三 子查询 197
【任务要求】 197
【知识储备】 197
【任务实施】 198
【任务实践】 200
任务四 集合查询 203
【任务要求】 203
【知识储备】 203
【任务实施】 203
【任务实践】 204
项目小结 205
上机实训 206
习题 207
项目七 创建和管理数据库视图 209
任务一 创建视图 210
【任务要求】 210
【知识储备】 211
【任务实施】 212
【任务实践】 214
任务二 系统存储过程在视图中的
应用 217
【任务要求】 217
【知识储备】 217
【任务实施】 218
【任务实践】 219
任务三 修改视图 220
【任务要求】 220
【知识储备】 220
【任务实施】 221
【任务实践】 222
任务四 删除视图 223
【任务要求】 223
【知识储备】 223
【任务实施】 224
【任务实践】 225
任务五 使用视图 225
【任务要求】 225
【知识储备】 225
【任务实施】 226
【任务实践】 227
项目小结 228
上机实训 228
习题 229
项目八 数据库编程基础 231
任务一 Transact-SQL基础 232
【任务要求】 232
【知识储备】 233
【任务实施】 235
【任务实践】 235
任务二 表达式 236
【任务要求】 236
【知识储备】 236
【任务实施】 239
【任务实践】 240
任务三 流程控制 241
【任务要求】 241
【知识储备】 241
【任务实施】 243
【任务实践】 244
任务四 函数 246
【任务要求】 246
【知识储备】 246
【任务实施】 255
【任务实践】 257
项目小结 262
上机实训 262
习题 263
项目九 创建和管理数据库存储过程 265
任务一 创建存储过程 266
【任务要求】 266
【知识储备】 266
【任务实施】 269
【任务实践】 270
任务二 执行存储过程 275
【任务要求】 275
【知识储备】 276
【任务实施】 276
【任务实践】 278
任务三 修改存储过程 282
【任务要求】 282
【知识储备】 282
【任务实施】 282
【任务实践】 283
任务四 查看存储过程 283
【任务要求】 283
【知识储备】 283
【任务实施】 285
【任务实践】 286
任务五 删除存储过程 288
【任务要求】 288
【知识储备】 288
【任务实施】 289
【任务实践】 289
项目小结 289
上机实训 290
习题 291
项目十 创建和管理触发器 293
任务一 创建DML触发器 295
【任务要求】 295
【知识储备】 295
【任务实施】 297
【任务实践】 299
任务二 管理DML触发器 303
【任务要求】 303
【知识储备】 303
【任务实施】 304
【任务实践】 306
任务三 创建和管理DDL触发器 307
【任务要求】 307
【知识储备】 307
【任务实施】 309
【任务实践】 309
项目小结 311
上机实训 312
习题 312
项目十一 安全管理数据库 315
任务一 身份验证管理 316
【任务要求】 316
【知识储备】 316
【任务实施】 317
【任务实践】 318
任务二 权限管理 322
【任务要求】 322
【知识储备】 322
【任务实施】 323
【任务实践】 326
任务三 角色管理 332
【任务要求】 332
【知识储备】 332
【任务实施】 334
【任务实践】 336
项目小结 346
上机实训 346
习题 348
项目十二 数据库综合应用案例 349
任务一 创建应用程序项目文件 351
【任务要求】 351
【知识储备】 351
【任务实施】 352
【任务实践】 354
任务二 数据组件的设计和使用 365
【任务要求】 365
【知识储备】 365
【任务实施】 369
【任务实践】 372
任务三 用户页面设计 374
【任务要求】 374
【知识储备】 374
【任务实施】 375
【任务实践】 377
任务四 通过ASP.NET页面操纵
数据库 382
【任务要求】 382
【知识储备】 382
【任务实施】 384
【任务实践】 386
项目小结 393
上机实训 393
习题 394
习题参考答案 395
参考文献 399