前 言
数据库技术起源于20世纪60年代末,经过几十年的迅速发展,目前已经建立起一套较完整的理论体系,产生了一大批商用软件产品。随着数据库技术应用领域的不断扩大,对数据库的应用已深入到国民经济和社会生活的各个方面。因此,作为当代的大学生,学习和掌握数据库知识都是非常必要的。
为了提高计算机专业本科生对数据库知识的实践能力,很多高校的计算机专业对数据库的授课做了一些调整,相当一部分学校将数据库的教学安排在两个学期完成,或者分为两个阶段来完成。第一个阶段基本是以讲授数据库基本原理为主,第二个阶段以讲授数据库实践技术为主,作者所在的学校也是如此。但在教材选择上,本人发现适合数据库基础理论教学的教材很多,但适合数据库实践教学的教材却比较少,鉴于此,本人结合自己多年数据库基础理论及数据库技术实践的教学经验和科研经验编写了本书,希望能对学生学习数据库实际的管理以及后台编程技术有所帮助。
本书是为学生学习数据库知识而编写的一本教材,其中选用Microsoft SQL Server 2008作为实践平台。SQL Server具有良好的用户操作界面,功能全面而强大,有很高的市场占有率和很好的发展前景,非常适合作为学生的数据库实践平台。
本书主要包括两大部分内容。一部分是数据库管理方面的知识,这部分知识涵盖在第2、3、5、8、12、13、14章中,主要包括安装和配置SQL Server 2008数据库管理系统、创建与维护数据库、创建与维护关系表、创建分区表、构建索引的技术、安全管理、数据传输、备份和恢复数据库。另一部分是数据库编程方面的知识,这部分知识涵盖在第4、6、7、9、10、11章中,主要包括SQL基础、基本数据操作语句、高级查询、视图、存储过程、触发器、函数以及游标等。触发器主要是为了增强数据的完整性和一致性;存储过程主要是为了提高数据的操作效率,方便客户端的编程;函数主要是为了能实现一些复杂的数据操作以及模块共享功能;使用游标可以实现对数据的逐行处理。为方便数据库初学者学习和掌握数据库实践技能,本书特意在第1章介绍了数据库中最常用的基础知识,初学者在掌握了第1章的知识后,便可学习后续章节内容。
本书内容涵盖了常用的数据库管理和编程技术,内容由浅入深,除包含一般数据库实践知识外,还全面介绍了数据库技术发展的新功能、新思想,这些新功能在SQL Server 2008中得到了全面的支持,包括查询结果的并、交、差运算,以及开窗函数、公用表表达式、筛选索引、包含列索引、分区表、索引视图(物化视图)等。
本书实例丰富、图文并茂,并紧密结合实际问题,从问题出发,循序渐进地给出解决思路和方法,使读者能更准确地理解知识并应用。
为方便读者学习和实践所学知识,也为了更好地讲解某些知识,本书为读者提供了示例数据库MySimpleDB,其数据是从SQL Server 2008提供的AdventureWorks数据库中选取的,有需要的读者可从华章网站(www.hzbook.com)上下载该数据库。为方便教师授课,本书为教师提供授课幻灯片、书中的编程代码以及习题答案,这些资料也可从华章网站上下载。
本书的出版得到了机械工业出版社华章公司领导和姚蕾的大力支持与帮助,他们给予我很多的鼓励和很好的建议,帮助我完成了本书的编写。梁琦、田英爱、谷葆春、张鸿斌等对本书部分章节及上机实践题目的编写提供了帮助,同时对本书提出了很多很好的建议和意见,是他们的积极参与和帮助,使本书得以顺利完成。
真诚地希望读者对本书提出自己宝贵的意见和建议,因为我知道在教学探索的道路上没有止境,没有最好,只有更好。
目 录
第1章 关系数据库基础
1.1 数据管理的发展
1.1.1 文件管理系统
1.1.2 数据库管理系统
1.2 数据库系统与数据库管理系统
1.2.1 数据库系统的组成
1.2.2 数据库管理系统的功能
1.3 数据和数据模型
1.3.1 数据和数据模型概述
1.3.2 数据模型三要素
1.3.3 概念层数据模型
1.3.4 组织层数据模型
1.3.5 E-R模型向关系模型的转换
1.4 数据库系统的结构
1.4.1 三级模式结构
1.4.2 两级模式映像功能与数据独立性
1.5 关系数据库规范化理论
1.5.1 函数依赖
1.5.2 关系规范化
1.6 数据库应用结构
1.6.1 集中式结构
1.6.2 文件服务器结构
1.6.3 客户端/服务器结构
1.6.4 互联网应用结构
小结
习题
第2章 SQL Server 2008基础
2.1 SQL Server 2008的版本和组件
2.1.1 SQL Server 2008的版本
2.1.2 SQL Server 2008的组件
2.1.3 SQL Server 2008各版本支持的功能
2.1.4 安装SQL Server 2008需要的软、硬件环境
2.1.5 实例
2.2 安装SQL Server 2008
2.3 配置SQL Server 2008
2.4 卸载SQL Server 2008
2.5 SQL Server Management Studio工具
2.5.1 连接到数据库服务器
2.5.2 查询编辑器
2.5.3 SSMS的常用选项
小结
习题
上机练习
第3章 数据库的创建与管理
3.1 SQL Server数据库概述
3.1.1 系统数据库
3.1.2 数据库的组成
3.1.3 数据库文件组
3.1.4 数据库文件的属性
3.2 创建数据库
3.2.1 用图形化方法创建数据库
3.2.2 用T-SQL语句创建数据库
3.3 查看和设置数据库选项
3.4 修改数据库
3.4.1 扩大数据库空间
3.4.2 收缩数据库空间
3.4.3 添加和删除数据库文件
3.4.4 创建和更改文件组
3.5 删除数据库
3.6 分离和附加数据库
3.6.1 分离数据库
3.6.2 附加数据库
3.7 复制数据库
小结
习题
上机练习
第4章 SQL基础
4.1 SQL概述
4.1.1 SQL的发展
4.1.2 SQL特点
4.1.3 SQL功能概述
4.2 系统提供的数据类型
4.2.1 数值数据类型
4.2.2 字符串类型
4.2.3 日期和时间数据类型
4.2.4 货币类型
4.3 用户定义数据类型
4.3.1 创建用户定义数据类型
4.3.2 删除用户定义数据类型
4.4 T-SQL基础知识
4.4.1 语句批
4.4.2 脚本
4.4.3 注释
4.5 变量
4.5.1 变量的种类
4.5.2 变量的声明与赋值
4.6 流程控制语句
小结
习题
上机练习