书籍详情

SQL Server2005编程入门经典(第2版)

SQL Server2005编程入门经典(第2版)

作者:(美)维埃拉(Robert Vieira) 著;叶寒、管贤平 译

出版社:清华大学出版社

出版时间:2007-04-01

ISBN:9787302146537

定价:¥69.90

购买这本书可以去
内容简介
  亚马逊五星级图书赞誉。至英文版出版以来,一直受到广大读者的推崇,是SQL Server 2005基础编程方面的优秀著作。该书延续了Wrox编程图书的一贯风格,全面细致地介绍了SQL Server 2005的各种编程基础知识,并逐步深入到脚本化、存储过程、自定义函数和触发器等高级主题,是各类初、中级SQL Server 用户和开发人员不可多得的实用指南。.本书全面介绍了SQL Server 2005的各种编程基础知识,可以作为初、中级SQL Server 用户的实用指南。作为面向数据库开发人员的指南,本书首先研究SQL的基础对象。每一章都在前一章的基础上进行介绍,逐步深入到更为高级的主题:SQL Server脚本化、存储过程、自定义函数和触发器。最后,本书讨论了管理方面的内容,帮助开发人员设计更为优秀的数据库。本书面向各个层次的Microsoft数据库开发人员,给他们提供SQL Server 2005版本中的核心语法、系统和策略方面的权威资源。
作者简介
  Robert Vieira是畅销书作者。1980年,他开始深入学习计算技术,从构建和修复计算机软件包,到通过Basic以及Z8和6502汇编语言进行编程。1983年,Robert开始攻读计算机信息系统的学位,但是他很快就感觉这种专业主机环境过于严格,因此于1985年放弃该学科转而研究“计算机故障”并开始长期使用数据库语言(从dBase到SQL Server)进行编obert于1990年获得了商业管理学位,在此之后,他经营结合商业和计算技术方面的知识进行工作。在完成学士学位后,他获得了MCSD、MCT以及MCDBA等认证。 Rob当前是Web Trends公司的软件体系结构设计师。译者简介叶寒,2005年毕业于南京航空航天大学航空宇航制造工程专业,获工学博士学位。参与翻译过有关AutoCAD 2004高级教程,C语言程序设计,以及Oracle数据库方面的计算机书籍3本,开发过多个数据库管理应用软件,参与开发国产准分子激光眼治疗机控制软件。目前在南昌大学从事软件相关教学和开发工作。
目录
第1章  RDBMS基础:SQL Server
数据库构成    1
1.1  数据库对象概述    1
1.1.1  数据库对象    2
1.1.2  事务处理日志    5
1.1.3  最基本的数据库对象:表    6
1.1.4  文件组    7
1.1.5  关系图    7
1.1.6  视图    8
1.1.7  存储过程    9
1.1.8  用户自定义函数    9
1.1.9  用户和角色    10
1.1.10  规则    10
1.1.11  默认值    10
1.1.12  用户自定义的数据类型    10
1.1.13  全文本目录    10
1.2  SQL Server 数据类型    11
1.3  SQL Server 对象标识符    14
1.3.1  需要命名的对象    15
1.3.2  命名规则    15
1.4  本章小结    16
第2章  SQL Server管理工具    17
2.1  Books Online    18
2.2  SQL Server Configuration
Manager    19
2.2.1  服务管理    19
2.2.2  网络配置    19
2.2.3  协议    21
2.2.4  客户机    23
2.3  SQL Server Management Studio    25
2.3.1  启动Management Studio    25
2.3.2  Query窗口    29
2.4  SQL Server集成服务(SSIS)    34
2.5  Bulk Copy Program    35
2.6  SQL Server Profiler    35
2.7  sqlcmd    35
2.8  本章小结    36
第3章  T-SQL语言基础    37
3.1  基本SELECT语句    38
3.1.1  SELECT语句与FROM子句    38
3.1.2  WHERE子句    41
3.1.3  ORDER BY子句    44
3.1.4  GROUP  BY子句    47
3.1.5  HAVING子句    55
3.1.6  XML子句    57
3.1.7  OPTION子句    57
3.1.8  DISTINCT和ALL谓词    57
3.2  使用INSERT语句添加数据    60
3.3  用UPDATE 语句更改数据    65
3.4  DELETE 语句    68
3.5  本章小结    69
3.6  练习    70
第4章  连接    71
4.1  连接    71
4.2  内部连接(INNER JOIN)    73
4.3  外部连接    80
4.3.1  简单的外部连接    81
4.3.2  处理更复杂的外部连接    85
4.4  完全连接(FULL JOIN)    89
4.5  交叉连接(CROSS JOIN)    90
4.6  JOIN语句的早期语法结构    92
4.6.1  内部连接的早期语法结构    92
4.6.2  外部连接的早期语法结构    93
4.6.3  交叉连接的早期语法结构    94
4.7  联合(UNION)    94
4.8  本章小结    99
4.9  练习    99
第5章  创建和修改数据表    101
5.1  SQL Server中的对象名    101
5.1.1  模式名称    101
5.1.2  数据库名称    104
5.1.3  通过服务器命名    104
5.1.4  总结默认值    104
5.2  CREATE语句    105
5.2.1  CREATE DATABASE    105
5.2.2  创建数据表    111
5.3  ALTER语句    121
5.3.1  ALTER DATABASE    122
5.3.2  ALTER TABLE    126
5.4  DROP语句    129
5.5  使用GUI工具    130
5.5.1  使用Management Studio
创建数据库    130
5.5.2  回到代码:使用Management
Studio创建脚本的基础    135
5.6  本章小结    136
5.7  练习    137
第6章  约束    139
6.1  约束的类型    140
6.1.1  域约束    140
6.1.2  实体约束    141
6.1.3  参照完整性约束    141
6.2  约束命名    141
6.3  键约束    142
6.3.1  主键约束    143
6.3.2  外键约束    145
6.3.3  唯一约束    155
6.4  CHECK约束    156
6.5  DEFAULT约束    157
6.5.1  在CREATE TABLE语句中
定义DEFAULT约束    158
6.5.2  在已存在的表中添加
DEFAULT约束    159
6.6  使约束失效    159
6.6.1  在创建约束时忽略无
效的数据    160
6.6.2  临时使已存在的约束失效    162
6.7  规则和默认值    164
6.7.1  规则    164
6.7.2  默认值    165
6.7.3  决定哪个表和数据类型使用
给定的规则或默认值    166
6.8  数据完整性的触发器    167
6.9  选择使用的内容    167
6.10  本章小结    168
第7章  在查询中添加更多内容    169
7.1  子查询的概念    170
7.2  相互关联的子查询    173
7.2.1  相互关联的子查询的
工作原理    174
7.2.2  在WHERE子句中的相互
关联的子查询    174
7.2.3  处理NULL数据——
ISNULL函数    177
7.3  派生表    178
7.4  EXISTS运算符    180
7.5  混合数据类型:CAST和
CONVERT    184
7.6  性能方面的考虑    186
7.7  本章小结    188
7.8  练习    188
第8章  做到规范:规范化和其他
基本设计问题    189
8.1  表    189
8.2  保持数据“规范”    190
8.2.1  开始之前    191
8.2.2  第一范式    192
8.2.3  第二范式    195
8.2.4  第三范式    197
8.2.5  其他范式    199
8.3  关系    199
8.3.1  一对一关系    200
8.3.2  一对一或一对多关系    201
8.3.3  多对多关系    203
8.4  图表    205
8.4.1  表    208
8.4.2  添加和删除表    208
8.4.3  关系    214
8.5  非规范化    216
8.6  超越规范化    217
8.6.1  保持简单    217
8.6.2  选择数据类型    218
8.6.3  存储方面的错误    218
8.7  规划快速示例    218
8.7.1  创建数据库    219
8.7.2  添加图表和初始表    219
8.7.3  添加关系    223
8.7.4  添加一些约束    225
8.8  本章小结    226
8.9  练习    226
第9章  SQL Server存储和
索引结构    229
9.1  SQL Server存储    229
9.1.1  数据库    229
9.1.2  盘区    229
9.1.3  页面    230
9.1.4  行    231
9.2  理解索引    231
9.2.1  平衡树(B-树)    232
9.2.2  SQL Server中数据
的访问方式    235
9.3  创建、改变和删除索引    243
9.3.1  CREATE INDEX语句    243
9.3.2  创建XML索引    248
9.3.3  使用约束创建的隐含索引    249
9.4  明智的选择:在何处以及
何时使用何种索引    249
9.4.1  选择性    249
9.4.2  监视成本:什么时候更少
的是更多的    250
9.4.3  选择群集索引    250
9.4.4  列顺序问题    253
9.4.5  删除索引    253
9.4.6  使用数据库引擎调整向导    253
9.5  维护索引    253
9.5.1  碎片    254
9.5.2  标识碎片与页面拆分
的可能性    254
9.6  本章小结    258
9.7  练习    259
第10章  视图    261
10.1  简单的视图    261
10.2  更加复杂的视图    266
10.3  使用T-SQL编辑视图    273
10.4  删除视图    273
10.5  在Management Studio中
创建和编辑视图    273
10.6  审核:显示现存的代码    277
10.7  保护代码:加密视图    279
10.8  关于模式绑定    280
10.9  使用VIEW_METADATA
使视图看起来类似于表    280
10.10  带索引的(具体化的)视图    281
10.11  本章小结    284
10.12  练习    285
第11章  编写脚本和批处理    287
11.1  脚本基础    287
11.1.1  USE语句    288
11.1.2  声明变量    288
11.1.3  使用@@IDENTITY    292
11.1.4  使用@@ROWCOUNT    296
11.2  批处理    297
11.2.1  批处理中的错误    299
11.2.2  什么时候使用批处理    299
11.3  SQLCMD    302
11.4  动态SQL:以EXEX命令
即时产生代码    305
11.5  本章小结    311
11.6  练习    312
第12章  存储过程    313
12.1  创建存储过程:基本语法    313
12.2  使用ALTER改变存储过程    315
12.3  删除存储过程    315
12.4  参数化(Parameterization)    315
12.5  流控制语句    321
12.5.1  IF...ELSE语句    321
12.5.2  CASE语句    331
12.5.3  使用WHILE语句循环    338
12.5.4  WAITFOR语句    339
12.5.5  TRY/CATCH块    339
12.6  通过返回值确认成功或失败    340
12.7  处理错误    342
12.7.1  以前的方式    343
12.7.2  在错误发生前处理错误    349
12.7.3  手动地激活错误    353
12.7.4  添加自定义的错误消息    356
12.8  使用存储过程的好处    360
12.8.1  创建可调用的进程    360
12.8.2  为了安全性使用
存储过程    361
12.8.3  存储过程和性能    362
12.9  扩展的存储过程    364
12.10  递归简介    364
12.11  调试    367
12.11.1  为调试设置
SQL Server    367
12.11.2  开启调试器    367
12.11.3  调试器的组成    371
12.11.4  在调试器启动后
使用调试器    372
12.12  .NET程序集    375
12.13  本章小结    376
12.14  练习    377
第13章  用户自定义函数    379
13.1  UDF的定义    379
13.2  返回标量值的UDF    380
13.3  返回表的UDF    383
13.4  调试用户自定义函数    393
13.5  数据库中的.NET    393
13.6  本章小结    394
13.7  练习    394
第14章  事务和锁    395
14.1  事务    395
14.1.1  BEGIN TRAN    396
14.1.2  COMMIT TRAN    396
14.1.3  ROLLBACK TRAN    397
14.1.4  SAVE TRAN    397
14.2  SQL Server记录日志的
工作方式    397
14.2.1  失败和恢复    398
14.2.2  隐式事务    400
14.3  锁定和并发    400
14.3.1  通过锁定可以防止
的问题    401
14.3.2  可以锁定的资源    404
14.3.3  锁升级和锁对性能
的影响    404
14.3.4  锁模式    405
14.3.5  锁的兼容性    407
14.3.6  指定一种特有的锁定
类型——优化器提示    407
14.4  设置隔离层    408
14.5  处理死锁(A1205)    411
14.5.1  SQL Server断定
死锁的方式    411
14.5.2  选择死锁牺牲者的方式    411
14.5.3  避免死锁    411
14.6  本章小结    413
第15章  触发器    415
15.1  触发器的概念    416
15.1.1  ON子句    417
15.1.2  WITH ENCRYPTION
子句    417
15.1.3  FOR|AFTER 子句与
INSTEAD OF子句    417
15.1.4  WITH APPEND子句    420
15.1.5  NOT FOR REPLICATION
子句    420
15.1.6  AS子句    420
15.2  为了数据完整性规则
使用触发器    420
15.2.1  处理来自于其他表
的需求    421
15.2.2  使用触发器来检查
更新的增量    422
15.2.3  将触发器用于自定义
的错误消息    424
15.3  触发器的其他用途    424
15.4  其他触发器的问题    424
15.4.1  触发器可以嵌套    424
15.4.2  触发器可以递归    425
15.4.3  触发器不能防止
修改体系结构    425
15.4.4  可以关闭触发器
而不删除它    425
15.4.5  触发器激活顺序    426
15.5  INSTEAD OF触发器    427
15.6  性能考虑    428
15.6.1  触发器是反应性的
而非主动的    428
15.6.2  触发器与激活它们的过程
之间不存在并发问题    428
15.6.3  使用IF UPDATE()和
COLUMNS_UPDATED()    429
15.6.4  使触发器简短    431
15.6.5  选择索引时不要忘记
触发器    431
15.6.6  不要在触发器中进行回滚    431
15.7  删除触发器    431
15.8  调试触发器    432
15.9  本章小结    433
第16章  XML初级教程    435
16.1  XML基础    435
16.1.1  XML文档的各个
组成部分    436
16.1.2  命名空间    444
16.1.3  元素的内容    445
16.1.4  有效的与良好格式的
——模式和DTD    446
16.2  SQL Server为XML
添加的功能    446
16.2.1  根据XML格式检索
关系数据    447
16.2.2  RAW    448
16.2.3  AUTO    450
16.2.4  EXPLICIT    452
16.2.5  PATH    468
16.2.6  OPENXML    473
16.3  简要介绍XSLT    478
16.4  本章小结    481
第17章  责任报告:Reporting
Services概述    483
17.1  Reporting Services 101    483
17.2  建立简单的报表模型    484
17.2.1  Data Source Views    488
17.2.2  创建报表    494
17.3  Report Server Projects    497
17.4  本章小结    501
第18章  与Integration Services
集成    503
18.1  理解问题    503
18.2  使用Import/Export Wizard
来生成基本的程序包    504
18.3  运行程序包    509
18.3.1  使用Execute Package
Utility    510
18.3.2  在Business Intelligence
Development Studio中
执行程序包    512
18.3.3  在Management Studio
中执行程序包    512
18.4  编辑程序包    513
18.5  本章小结    515
第19章  扮演管理员的角色    517
19.1  调度作业    517
19.1.1  创建运算符    518
19.1.2  创建作业和任务    520
19.2  备份和恢复    528
19.2.1  创建备份:转储    528
19.2.2  恢复模型    531
19.2.3  恢复    532
19.3  索引维护    533
19.4  数据归档    536
19.5  本章小结    536
19.6  练习    537
附录A  练习答案    539
附录B  系统函数    549
附录C  找到合适的工具    595
附录D  非常简单的连接示例    601
附录E  安装和使用样本数据库    605
猜您喜欢

读书导航