SQL Server 2005数据库应用与开发

2010年清华大学出版社出版的图书
《SQL Server 2005数据库应用与开发》是由姜桂洪、张龙波等编著，2010年清华大学出版社出版的21世纪高等学校计算机教育实用规划教材。该教材适合作为高等院校本科、专科计算机及相关专业的学生学习数据库应用系统开发技术的教材，也可作为从事数据库管理与开发的IT领域科技工作者的参考书。
全书共14章，主要介绍了SQL Server 2005的运行环境、数据库及各种常用数据库对象的创建和管理、Transact-SQL语言及其应用、数据库的备份与恢复、数据转换、安全管理、自动化管理任务、复制与性能监视等。对数据库系统设计中较为常用的数据检索、数据完整性、视图、存储过程、触发器、并发控制等进行了阐述，并给出了利用C#2005与SQL Server 2005开发数据库应用系统的案例。
成书过程
修订过程
该教材主要由姜桂洪、张龙波、张冬梅、苏晶和曹雁锋等编写，全书由姜桂洪统稿。
出版工作
2010年5月1日，该教材由清华大学出版社出版。
出版社工作人员责任编辑	责任校对	责任印制
魏江江、李玮琪	梁毅	王秀菊
内容简介
全书共分14章。
第1章SQL Server 2005基础知识和运行环境的基本操作。
第2章SQL Server 2005数据库的创建与管理、数据库文件和文件组、数据库快照等。
第3章数据类型、表的基本操作、数据完整性和数据转换等。
第4章Transact-SQL的语法规则及使用。
第5章利用SELECT语句进行数据检索。
第6章多表连接、子查询、游标和管理大对象类型数据的操作。
第7章索引与视图的创建、管理、删除方法及统计信息的操作等。
第8章存储过程与触发器的基本特点、创建、修改、删除等操作。
第9章事务和并发控制的基本特点、创建、管理和应用等基本操作。
第10章SQL Server 2005的安全管理，包括系统安全性架构、登录名、架构、用户、角色、权限的类型和管理等。
第11章数据库的备份和还原，主要包括备份和还原的类型、还原前的准备、备份和还原的操作过程等。
第12章系统自动化任务管理的基本工作原理，作业、操作员、警报的创建和使用等。
第13章复制与性能监视，主要内容包括复制的创建、管理与应用，系统监视和调整的目的、系统性能因素、监视策略和主要监视工具的使用等。
第14章数据库应用系统的开发过程，通过实例讲解如何使用C#2005及ASP访问SQL Server数据库，开发数据库应用程序等。
教材目录
第1章SQLServer2005的运行环境 1	1.1SQLServer数据库简介 1	1.1.1SQLServer数据库的发展历程 1	1.1.2SQLServer2005的新特性 2	1.2SQLServer2005的系统要求 3	1.2.1SQLServer2005版本 3	1.2.2硬件需求 4	1.2.3软件需求 5	1.2.4网络需求 5	1.3SQLServer2005的管理平台 6	1.3.1数据库引擎及ManagementStudio的使用 6	1.3.2SQLServer2005的实例 11	1.3.3新建查询 12	1.3.4SQLServer2005的服务项目 15	1.3.5系统数据库 16	1.4SQLServer2005的服务器管理 17	1.4.1注册服务器 17	1.4.2启动、暂停和关闭服务器 19	1.4.3配置服务器 21	1.5SQLServer2005的联机丛书和教程 23	1.5.1联机丛书的使用 23	1.5.2教程的使用 25	1.6小结 25	习题 26	第2章创建与管理数据库 27	2.1设计数据库 27	2.1.1基本概念 27	2.1.2设计数据库的规范化要求 28	2.1.3数据库的设计 29	2.1.4数据库的存储 31	2.2用户数据库的创建与修改 33	2.2.1用户数据库的创建 33	2.2.2修改数据库 39	2.2.3数据库文件的脚本生成 42	2.3管理数据库 45	2.3.1查看数据库状态信息 45	2.3.2数据库的属性设置 47	2.3.3估算数据库大小 49	2.3.4收缩数据库 50	2.3.5分离和附加用户数据库 52	2.3.6脱机和联机用户数据库 54	2.3.7删除数据库 55	2.4文件组的创建 56	2.5数据库快照和数据分区管理 59	2.5.1数据库快照 59	2.5.2数据分区管理 61	2.6小结 62	习题 62	第3章表和数据完整性 64	3.1SQLServer2005的数据类型 64	3.1.1数值类型 64	3.1.2字符类型 65	3.1.3日期时间类型 66	3.1.4货币类型 66	3.1.5其他数据类型 67	3.2表的创建与维护 68	3.2.1表的类型 68	3.2.2表的创建 68	3.2.3数据浏览 77	3.2.4表结构的修改 78	3.2.5表数据的修改 81	3.2.6删除表 84	3.3数据的完整性 87	3.3.1数据完整性的类型 87	3.3.2约束 88	3.3.3规则 94	3.3.4默认值 96	3.3.5强制数据完整性 98	3.4数据库关系图 98	3.5数据的导入和导出 101	3.5.1数据转换概述 101	3.5.2导入数据 103	3.5.3导出数据 104	3.6小结 104	习题 104	第4章Transact-SQL语言基础 106	4.1了解Transact-SQL编程语言 106	4.1.1Transact-SQL概述 106	4.1.2Transact-SQL语句分类 108	4.2Transact-SQL语法要素 108	4.2.1Unicode码与ASCII码 108	4.2.2标识符 109	4.2.3常量 110	4.2.4变量 112	4.2.5注释 113	4.3Transact-SQL运算符 114	4.3.1算术运算符 114	4.3.2比较运算符 114	4.3.3逻辑运算符 115	4.3.4字符串连接运算符 117	4.3.5位运算符 117	4.3.6赋值运算符 117	4.3.7运算符的优先级 117	4.4Transact-SQL函数 118	4.4.1数学函数 118	4.4.2聚合函数 119	4.4.3时间日期函数 119	4.4.4转换函数 120	4.4.5字符串函数 122	4.4.6自定义函数 123	4.5Transact-SQL表达式 123	4.6Transact-SQL控制流语句 124	4.6.1IF…ELSE语句 124	4.6.2BEGIN…END语句 124	4.6.3WHILE语句 125	4.6.4CASE语句 126	4.6.5其他语句 128	4.7小结 131	习题 132	第5章数据检索 133	5.1利用SELECT语句检索数据 133	5.1.1利用SELECT…FROM语句指定列 135	5.1.2利用WHERE子句指定行 136	5.1.3利用INTO子句生成新表 138	5.2数据过滤 138	5.2.1空值查询 138	5.2.2利用比较运算符查询 139	5.2.3利用字符串运算符查询 140	5.2.4利用逻辑运算符查询 141	5.2.5检索一定范围内的值 141	5.2.6利用列表值检索数据 142	5.3设置结果集格式 143	5.3.1改变列名 144	5.3.2利用ORDERBY子句排序 144	5.3.3消除重复行 146	5.3.4利用TOPn输出前n行 147	5.4GROUPBY子句和HAVING子句 148	5.4.1GROUPBY子句的使用 148	5.4.2GROUPBY子句和HAVING子句的联合使用 149	5.5COMPUTE语句和聚合函数的应用 150	5.5.1COMPUTE语句的应用 150	5.5.2聚合函数的应用 152	5.6小结 154	习题 154	第6章Transact-SQL语句的高级应用 156	6.1多表连接 156	6.1.1连接概述 156	6.1.2内连接 157	6.1.3外连接 158	6.1.4交叉连接 160	6.1.5连接多个表 160	6.1.6合并多个结果集 161	6.2使用子查询 162	6.2.1子查询介绍 162	6.2.2利用子查询做表达式 163	6.2.3利用子查询关联数据 164	6.2.4利用子查询生成派生表 165	6.2.5利用子查询修改表数据 165	6.2.6EXISTS和NOTEXISTS子句 166	6.3利用游标处理结果集 167	6.3.1游标的概念 167	6.3.2游标的运用 168	6.3.3游标的嵌套 172	6.3.4查看游标的信息 174	6.4管理大对象类型数据 177	6.5小结 182	习题 183	第7章索引和视图 184	7.1规划索引 184	7.1.1索引的用途 184	7.1.2索引的类型 184	7.1.3设计索引的基本原则 185	7.2创建索引 186	7.2.1利用SQLServerManagementStudio创建索引 186	7.2.2利用CREATEINDEX命令创建索引 187	7.3维护索引 190	7.3.1在SQLServerManagementStudio中修改索引 190	7.3.2利用ALTERINDEX命令修改索引 190	7.3.3检测索引碎片 192	7.3.4索引重组 192	7.3.5索引重建 193	7.3.6查看索引信息 194	7.3.7删除索引 194	7.4统计信息及应用 195	7.4.1统计信息的收集 195	7.4.2统计信息的创建 196	7.4.3查看统计信息 197	7.4.4统计信息的更新 199	7.5视图的定义 200	7.5.1视图概念 200	7.5.2创建视图 200	7.5.3查看视图信息 206	7.6视图的修改 209	7.6.1在SQLServerManagementStudio中修改视图 209	7.6.2利用ALTERVIEW命令修改视图 210	7.6.3视图重命名 211	7.6.4删除视图 212	7.7通过视图修改数据 213	7.8小结 217	习题 218	第8章存储过程与触发器 220	8.1存储过程概述 220	8.1.1存储过程的类型 220	8.1.2存储过程的设计原则 221	8.1.3常用系统存储过程的使用 221	8.2创建和管理存储过程 222	8.2.1创建存储过程 222	8.2.2修改存储过程 225	8.2.3执行存储过程 226	8.3触发器概述 227	8.3.1触发器的作用 227	8.3.2触发器的分类 227	8.3.3触发器的工作原理 228	8.3.4创建触发器前应注意的问题 228	8.4创建和管理触发器 229	8.4.1创建触发器 229	8.4.2修改触发器 231	8.4.3删除触发器 232	8.4.4禁用触发器 232	8.4.5启用触发器 233	8.5小结 233	习题 234	第9章事务和锁 236	9.1事务概述 236	9.1.1事务的特点 236	9.1.2事务的分类 237	9.2管理事务 238	9.2.1启动事务 238	9.2.2保存事务 241	9.2.3提交事务 242	9.2.4回滚事务 242	9.2.5自动提交事务 242	9.2.6事务嵌套 243	9.3管理并发数据访问 245	9.3.1并发的影响 245	9.3.2并发控制的类型 246	9.3.3事务的隔离级别 247	9.4管理锁 248	9.4.1锁的类型 248	9.4.2可以锁定的资源 249	9.4.3锁的兼容性 249	9.4.4死锁 250	9.4.5显示锁定信息 251	9.5小结 252	习题 253	第10章SQLServer2005的安全管理 254	10.1SQLServer2005的安全性机制 254	10.1.1基本概念 255	10.1.2权限层次结构 256	10.1.3查询权限 256	10.2管理服务器范围的安全性 258	10.2.1SQLServer2005的验证模式 258	10.2.2服务器角色 260	10.2.3管理登录名 261	10.2.4管理凭据 265	10.3管理数据库范围的安全性 266	10.3.1数据库角色 266	10.3.2管理数据库用户 273	10.3.3特殊用户 275	10.4管理密钥与证书 276	10.4.1SQLServer2005的密码系统架构 276	10.4.2创建密钥 276	10.4.3创建证书 278	10.4.4加密实例 279	10.5权限管理 280	10.5.1语句权限 280	10.5.2对象权限 282	10.5.3解决权限冲突 285	10.6小结 285	习题 286	第11章备份和还原 287	11.1备份和还原概述 287	11.1.1备份和还原的目的 287	11.1.2备份的时机 287	11.1.3备份和恢复的类型 289	11.1.4备份策略的选择 290	11.1.5恢复模式的设置 290	11.1.6在几种不同灾难情况下的恢复 293	11.2备份数据库 293	11.2.1创建备份设备 294	11.2.2执行完整数据库备份 295	11.2.3执行差异数据库备份 299	11.2.4执行事务日志备份 300	11.2.5执行文件或文件组的备份 302	11.3还原数据库 304	11.3.1从完整数据库备份中还原 305	11.3.2从差异数据库备份中还原 307	11.3.3从事务日志备份中还原 308	11.3.4从文件或文件组的备份中还原 311	11.4还原受损的系统数据库 312	11.5小结 314	习题 315	第12章系统自动化任务管理 316	12.1SQLServer代理 316	12.1.1配置SQLServer代理 317	12.1.2启动和停止SQLServer代理 319	12.1.3SQLServer代理的安全性 321	12.2作业 322	12.2.1创建作业 322	12.2.2管理作业 325	12.2.3查看作业历史 326	12.3警报 328	12.3.1创建警报响应SQLServer错误 328	12.3.2删除警报 330	12.4操作员 330	12.4.1创建操作员 331	12.4.2为操作员分配警报 331	12.5维护计划 333	12.6小结 337	习题 338	第13章复制与性能监视 339	13.1复制概述 339	13.1.1复制的发布模型 339	13.1.2复制类型 340	13.2创建复制 342	13.2.1创建发布 342	13.2.2创建订阅 346	13.2.3配置分发 351	13.3管理复制 353	13.3.1查看和修改发布属性 354	13.3.2查看和修改项目属性 355	13.3.3设置历史记录保持期 356	13.3.4查看发布服务器信息及执行任务 356	13.4如何查看SQLServer的当前活动 358	13.4.1监视SQLServer的目的 358	13.4.2使用活动监视器 359	13.4.3动态管理对象 362	13.5系统性能监视器的使用 364	13.5.1系统性能监视器的运行 364	13.5.2SQLServer的性能对象 366	13.5.3监视SQLServer的任务 366	13.5.4利用SQLServerProfiler工具进行监视 368	13.6小结 372	习题 372	第14章SQLServer数据库应用系统开发 373	14.1数据库应用系统开发的一般过程 373	14.2数据库应用系统的常用开发工具 375	14.2.1常用开发工具简介 375	14.2.2C#程序设计基础 376	14.2.3利用C#开发数据库应用系统的过程 381	14.3数据库系统开发实例——日用品销售管理系统 385	14.3.1开发背景与系统分析 385	14.3.2系统总体设计 386	14.3.3数据库设计 387	14.3.4系统模块功能的实现 389	14.3.5系统测试 392	14.3.6系统运行 393	14.4数据库系统开发的常见问题及处理 397	14.5小结 400	习题 400
（注：目录排版顺序为从左列至右列）
教学资源
该教材有配套教材——《SQL Server 2005数据库应用与开发习题解答与上机指导》，内容包括了该教材所有习题的详尽参考答案、模拟试题、SQL Server 2005软件安装配置的常见操作、按该教材章节顺序配备的实验及实验指导等。
书名	书号	出版社	出版时间	作者
《SQL Server 2005数据库应用与开发习题解答与上机指导》	9787302223993	清华大学出版社	2010.06.01	姜桂洪、苏晶
教材特色
该教材从教学实际需求出发，结合初学者的认知规律，讲解SQLServer2005数据库管理与开发过程中的知识。全书以例题对基本操作进行示范，所有的例题全部通过调试，内容涵盖了设计一个数据库管理系统要用到的主要知识。
作者简介
姜桂洪，1966年11月生，男，山东理工大学计算机科学与技术学院副教授，从事计算机语言和数据库的教学工作。主讲课程有数据库系统原理、数据库维护与编程、软件工程。获得2015年度教学优秀奖。