《SQL Server 2008程序设计与应用技术》全面而又系统地介绍了数据库基础知识、关系数据库的基本概念,SQL Server 2008的安装以及常用管理配置工具,SQL Server 2008的数据库、表、索引、视图等数据对象的使用与管理,数据查询与TSQL语言, SQL Server 2008存储过程和触发器的使用,事务和锁的概念与应用,SQL Server 2008数据库的安全管理、数据库的备份与恢复,使用ASP.NET访问SQL Server 2008数据库的方法与应用实例。
《SQL Server 2008程序设计与应用技术》定位于本科生的教材,读者范围是研究生、本科生、大专院校的教师、数据库管理员、网络应用程序开发人员。
当今的世界,是计算机网络的时代,也是信息的时代,计算机网络已成为人们获取信息和交流信息的一种重要手段,它正深刻地影响着人类社会的发展及经济运行模式,影响着人们的工作、学习和生活方式。为此,社会的各行各业都投入了大量的人力、物力和财力建设与实施基于计算机网络的信息化工程,因此,迫切需要大量掌握计算机网络系统规划、设计、建设、运行、管理和维护的实用型网络技术的高级人才,网络工程专业正是为顺应这种社会需求而诞生的新兴专业。
网络工程专业是面向网络工程应用的计算机类专业,旨在培养具有计算机网络基础知识和抽象思维能力,掌握计算机网络软/硬件基本理论和技术,掌握网络工程的基本原理与实现方法,能运用所学的知识与技能去分析和解决网络工程的实际问题。由于网络工程专业毕业生是可从事计算机网络的建设与应用、计算机网络的管理与维护、网络工程的开发与集成的高层次网络人才,深受社会各界的广泛关注和青睐,近几年来该专业的毕业生就业率都居高不下。
自2001年经教育部批准,同意11所高校开办本科网络工程专业以来,每年都有数十所高等院校申请开设网络工程专业,到2009年底,开设网络工程专业的高校已超过250所。这表明,网络工程专业在我国高校将趋于逐年增加之势。
在这种形势下,作为普通高校,如何适应时代的需求,培养掌握计算机网络及其相关技术的高素质网络工程人才,以满足不同行业不同岗位对网络工程人才的需求,成为一项既紧迫又重要的战略任务。为达到这一目标,高校除了需要具有良好的教学环境、先进的教学设施和优秀的师资队伍之外,最重要的还是需要一套符合现代网络工程专业需求的高校教材。
多年来,全国很多出版社出版了大量的计算机技术类及信息技术类的高校教材,这些教材为我国高等教育事业做出了巨大的贡献,但这些教材大都理论性较强,弱化了实用性,特别是很少涉及网络工程设计与建设、网络工程实践与管理等方面的内容,因此,这些传统的教材大多数已不再适应当代网络工程专业的教学需求。要想培养出符合现代社会需求的实用型网络工程人才,必须对传统的教学模式和教材进行改革,为此,在清华大学出版社的鼎立支持下,本套丛书的编委会及作者根据网络工程专业的特点和需求,在广泛征求意见和充分酝酿的基础上,组织编写了这套满足普通高校本科网络工程教学需求的教材。
本套丛书最显著的特色是: 注重理论与实践相结合,强调网络工程专业的特点,突出实用性和可操作性,注重实践技能的训练,提高学生的创新能力,以达到培养实用型网络工程管理人才的目的。
丛书的主要编写模式是: 大多数教材都是紧紧围绕网络工程应用进行构思和编写的,在介绍相关理论知识的基础上,给出大量的应用实例,并有完整的实用案例分析。在教材中,将这种实用案例作为一个工程项目来看待,强调从工程项目的角度出发,在进行需求分析的基础上,给出案例的详细设计与实施步骤,旨在帮助学生在每学完一门课程后,都能将所学的知识运用到应用程序的设计与开发和网络工程的规划与设计、建设与管理之中。
本书主编及参编者都是长期从事计算机及网络的教学工作、网络工程建设与管理工作的高校教师,具有较深的理论知识、丰富的教学经验和网络管理经验。本套丛书就是这些教师多年教学经验、网络开发与应用经验、网络管理与维护经验和心得体会的结晶。
为了保证教材质量,我们组织了由高校专家、学者组成的教材编审委员会,编委会负责对教材的结构及书稿内容进行全程的指导和监督,并负责对书稿进行审查,以确保教材的编写质量。
很高兴能看到本套丛书的出版,希望本套丛书能为高校的教学贡献微薄之力,更希望本套丛书能为广大师生和读者带来收益和帮助。
贵州省政协副主席、博士生导师丛书编委会名誉主任谢晓尧2010年2月〖3〗前言数据库技术的发展十分迅速,随着Internet的普及,数据库被大量应用在计算机网络上。各种网站对数据可靠性和安全性的要求不断提高,市场竞争日益激烈,各大软件厂商也推出自己最新的数据库产品以满足用户的需求。SQL Server 2008是Microsoft公司的一个重大产品,它推出了许多新的特性和关键的改进,使得它成为成功的、应用广泛的关系数据库产品。作者在总结多年对SQL Server系列产品的研究、使用和教学经验的基础上,参阅大量的资料,编写出这本《SQL Server 2008数据库应用教程》,旨在帮助广大读者全面了解和掌握SQL Server 2008,为更好地应用SQL Server系列产品打下坚实的基础。
全书共分为11章,介绍了从入门到深入掌握SQL Server 2008所需的各个方面的知识。
第1章介绍数据管理技术的发展,讲述了数据库、数据库管理系统和数据库系统的基本概念,同时还介绍了数据模型的基本概念。
第2章介绍关系的基本概念,包括关系的数学定义、关系的完整性和关系代数基础,还介绍了数据库规范化的基础知识以及数据库设计的基本步骤。
第3章介绍SQL Server 2008的组成、特点、安装方法以及附带的管理工具和配置方法。
第4章介绍SQL Server 2008常用的数据库对象,包括数据库的创建、配置和管理;数据表的创建、设计、数据类型、表的完整性等;索引的结构与类型,如何创建、使用以及管理索引。
第5章介绍数据查询的相关语言和数据对象,包括SELECT查询语句的使用、TSQL语言基础和视图的概念与操作等内容。
第6章介绍存储过程和触发器这两个重要的数据库对象,包括存储过程与触发器的概念,存储过程的创建、使用与管理,创建与应用DML和DDL触发器等。
第7章介绍数据库并发控制中的事务与锁的内容,主要包括事务的概念、SQL Server 2008中的事务与高级事务主题、SQL Server中的锁,以及如何防止死锁。第8章介绍数据库安全性方面的内容,包括计算机安全性的基本概念、SQL Server 2008的安全机制、SQL Server服务器的安全管理和SQL Server数据库的安全管理。
第9章介绍数据库的备份与恢复,包括数据库的导入与导出、SQL Server数据库的各种备份类型,以及如何创建备份和恢复数据库。
第10章介绍使用ASP.NET访问SQL Server 2008数据库,主要包括ASP.NET程序的基本语法和ADO.NET数据库访问技术与实现。
第11章介绍一个具体实例的实现,将系统设计、数据库设计、ASP.NET程序设计进行综合应用,使读者对网络环境下的数据库应用系统开发有初步了解。
本书内容丰富、深入浅出、突出应用、图文并茂。适合作为各级院校学生学习SQL Server 2008数据库的教材,也可作为数据库应用开发人员的参考资料。
本书由贵州大学计算机科学与技术学院的王虹副教授担任主编,许华容担任副主编,贵州大学的林序老师,贵州理工学院的高腾刚、程超、肖利平老师参与编写,其中王虹编写第1章和第2章,高腾刚和程超共同编写第3章,林序编写第4 ~ 6章,许华容编写第7 ~ 10章,许华容和肖利平共同编写第11章。贵州理工学院杨云江教授担任丛书编审委会主任兼丛书总主编,负责全书目录结构、书稿内容结构的组织、规划与审定以及书稿的初审工作。
由于时间仓促,水平有限,书中难免存在不足与疏漏,敬请广大读者批评指正。
第1章数据库基础知识1
1.1基本概念1
1.1.1数据管理技术及其发展1
1.1.2数据库及其特点4
1.1.3数据库管理系统4
1.1.4数据库系统5
1.1.5数据库系统的体系结构6
1.1.6数据字典7
1.2数据模型7
1.2.1数据模型的基本概念8
1.2.2非关系模型10
1.2.3关系模型12
思考题13
第2章关系数据库14
2.1关系模型的基本概念14
2.1.1关系的数学定义14
2.1.2关系的完整性16
2.1.3关系代数18
2.2数据库规范化基础22
2.2.1函数依赖22
2.2.2码23
2.2.3范式23
2.2.4规范化设计25
2.3数据库设计26
2.3.1需求分析26
2.3.2概念设计272.3.3逻辑设计27
2.3.4物理设计29
2.3.5数据库实施29
2.3.6运行和维护29
思考题29
第3章SQL Server 2008基础30
3.1SQL Server 2008概述30
3.1.1SQL Server 2008的组成30
3.1.2SQL Server 2008的新特点32
3.2SQL Server 2008的安装34
3.2.1SQL Server 2008的安装要求34
3.2.2SQL Server 2008的安装过程35
3.3SQL Server 2008的管理与配置39
3.3.1常用管理工具40
3.3.2管理SQL Server 2008服务器41
3.3.3配置SQL Server 2008服务器44
3.4SQL Server 2008的其他管理工具50
3.4.1商业智能开发平台51
3.4.2事件探查器51
3.4.3数据库引擎优化顾问52
3.4.4报表服务54
思考题55
第4章常用数据库对象56
4.1数据库56
4.1.1数据库管理概述56
4.1.2创建数据库57
4.1.3配置数据库59
4.1.4更改数据库60
4.1.5删除数据库60〖3〗4.2数据表62
4.2.1列的数据类型62
4.2.2创建表66
4.2.3使用约束67
4.2.4修改表结构73
4.2.5删除表76
4.3索引77
4.3.1索引的结构和类型77
4.3.2使用索引的基本原则80
4.3.3创建索引82
4.3.4修改和删除索引82
思考题85
第5章数据查询与视图87
5.1结构化查询语言87
5.1.1SELECT语句的一般格式87
5.1.2简单查询89
5.1.3聚合函数和分组查询91
5.1.4JOIN连接查询93
5.1.5嵌套查询93
5.1.6集合查询95
5.2TSQL语言基础95
5.2.1TSQL语言简介95
5.2.2数据类型、常量和变量96
5.2.3运算符和表达式99
5.2.4流程控制语句101
5.2.5常用函数106
5.3视图110
5.3.1视图的作用111
5.3.2创建视图111
5.3.3通过视图修改数据1135.3.4修改和删除视图114
思考题116
第6章存储过程和触发器118
6.1存储过程118
6.1.1存储过程的概念118
6.1.2创建存储过程118
6.1.3执行存储过程121
6.1.4修改和删除存储过程123
6.1.5系统存储过程和扩展存储过程125
6.1.6存储过程应用125
6.2触发器126
6.2.1触发器的基本概念126
6.2.2创建和应用DML触发器126
6.2.3创建和应用DDL触发器131
6.2.4嵌套触发器和递归触发器132
6.2.5查看、修改和删除触发器133
思考题135
第7章事务和锁136
7.1事务136
7.1.1事务的概念136
7.1.2事务的操作137
7.1.3高级事务主题140
7.2锁143
7.2.1并发控制概述143
7.2.2SQL Server锁的模式144
7.2.3查看数据库中的锁146
7.2.4防止死锁148
思考题149
〖3〗第8章安全管理150
8.1安全管理概述150
8.1.1计算机安全性概述150
8.1.2SQL Server 2008安全机制151
8.2网络服务器安全管理152
8.2.1服务器登录模式152
8.2.2创建和管理登录名154
8.2.3服务器角色管理157
8.3网络数据库安全管理157
8.3.1管理架构157
8.3.2数据库用户管理159
8.3.3数据库角色管理161
8.3.4数据库权限管理164
思考题168
第9章数据库的备份与恢复169
9.1数据库的导入和导出169
9.1.1数据库的导入169
9.1.2数据库的导出174
9.2数据库备份179
9.2.1备份及其工作原理179
9.2.2创建备份设备180
9.2.3完整备份与差异备份182
9.2.4事务日志备份185
9.3数据库的恢复188
9.3.1数据库恢复模式188
9.3.2数据库的标准恢复189
9.3.3文件/文件组恢复192
9.3.4时间点恢复192
9.3.5使用TSQL还原数据库193
9.4网络数据库的备份和恢复策略1949.4.1确定备份和恢复的目标与要求194
9.4.2几种备份和恢复策略比较195
思考题196
第10章ASP.NET访问SQL Server 2008数据库197
10.1ASP.NET概述197
10.1.1ASP.NET的运行机制197
10.1.2ASP.NET常用对象198
10.2ADO.NET概述200
10.2.1ADO.NET的组成200
10.2.2SQL Server数据库访问常用对象201
10.3编写ASP.NET网络数据库应用程序203
10.3.1C#简介203
10.3.2安装Visual Studio 2010207
10.3.3创建ASP.NET应用程序210
思考题217
第11章网络应用系统设计实例218
11.1需求分析218
11.2功能设计218
11.2.1成绩管理系统218
11.2.2后台数据查看系统219
11.3数据库设计220
11.4关键技术222
11.5系统主要功能详细设计225
11.5.1母版页设计225
11.5.2登录页面设计228
11.5.3教师授课信息页面设计231
11.5.4登记成绩页面设计233
11.5.5学生成绩查询页面设计237
11.5.6学生选课页面设计240〖3〗11.5.7后台数据查看系统设计247
思考题252
附录英文缩写词汇253
参考文献255