SQL Server 2005数据管理与开发从入门到精通
《SQL Server 2005数据管理与开发从入门到精通》是2007年清华大学出版社出版的图书,作者是袁永林、宁义、汪海波。
基本介绍
- 书名:SQL Server 2005数据管理与开发从入门到精通
- 作者:袁永林、宁义、汪海波
- ISBN:9787302151371
- 定价:86元
- 出版社:清华大学出版社
- 出版时间:2007年5月23日
- 装帧:平装
内容简介
本书全面介绍SQLServer2005的管理和开发知识,包括SQLServer2005的新增功能、常用工具、开发基础(包括T-SQL、联接、创建和修改表、约束、视图、脚本和批处理、存储过程、用户自定义函式、触发器及游标等内容),讨论範式化设计和与设计相关的基本问题,探讨如何将SQLServer2005与XML结合起来,并就XML技术、本机XMLWeb查询和公共语言运行时进行了探讨,从而对利用多种技术进行高级查询进行深入介绍。本书还详细讨论了综合服务和VisualStudio等内容。最后针对大家感兴趣的全文检索、分散式查询、服务分割器、报表服务和分析服务进行深入探讨,详细论述性能最佳化和管理,并以典型示例结束全书内容。
本书系统性强,知识点多,系统地介绍了SQLServer2005的新功能。国中级用户可以将本书作为学习SQLServer2005的教材,资料库设计高级开发人员也可以使用本书学习和研究资料库开发知识。
本书系统性强,知识点多,系统地介绍了SQLServer2005的新功能。国中级用户可以将本书作为学习SQLServer2005的教材,资料库设计高级开发人员也可以使用本书学习和研究资料库开发知识。
目录
第1章SQLServer2005概述 1
1.1SQLServer2005版本简介 1
1.1.1版本说明 2
1.1.2硬体和OS要求 3
1.1.32005版本新特性 4
1.2资料库系统开发模型 10
1.2.1单层结构(主机系统) 10
1.2.22-层结构(客户/伺服器结构) 10
1.2.33-层结构 11
1.2.4n-层结构 11
1.3数据存取模型 12
1.4安装 13
1.5SQLServer2005的组件 15
1.5.1资料库对象 17
1.5.2SQLServer的数据类型 30
1.5.3SQLServer的对象标识符 33
1.6小结 34
第2章SQLServer2005实用工具 35
2.1SQLServer管理工具 35
2.1.1SQLServerManagementStudio 35
2.1.2複製 36
2.1.3综合服务 36
2.1.4MSDTC管理控制台 37
2.1.5SQLServerProfiler 37
2.1.6查询分析器 38
2.1.7OSQL 38
2.1.8sqlmaint.exe 38
2.2配置工具(ConfigurationTools) 39
2.2.1NotificationServicesCommandPrompt 39
2.2.2ReprotingServicesConfiguration 40
2.2.3SQLServerConfigurationManager 40
2.2.4SQLServerErrorandUsageReporting 47
2.2.5SQLServerSurfaceAreaConfiguration 49
2.3性能工具(PerformanceTools) 49
2.3.1资料库引擎最佳化顾问 50
2.3.2SQLServerProfiler 51
2.4文档和指南(Documentation
andTutorials) 52
2.4.1在线上丛书 52
2.4.2示例 53
2.4.3指南 53
2.5SQLServer2005UpgradeAdvisor 54
2.6开发工具 54
2.7小结 54
第3章SQLServer2005资料库开
发基础 55
3.1T-SQL基础语句 55
3.1.1最基本的SELECT语句 55
3.1.2INSERT语句 65
3.1.3用UPDATE语句更新取得的数据 66
3.1.4DELETE语句 67
3.2联接表 68
3.2.1联接 68
3.2.2内部联接 70
3.2.3外部联接 72
3.2.4完全联接 76
3.2.5交叉联接 77
3.2.6探讨联接的替代语法 77
3.2.7联合 79
3.3创建和修改表 81
3.3.1SQLServer的对象名 81
3.3.2CREATE语句 83
3.3.3ALTER语句 86
3.3.4DROP语句 89
3.4约束 89
3.4.1约束类型 90
3.4.2约束名 91
3.4.3键约束 91
3.4.4CHECK约束 97
3.4.5默认约束 98
3.4.6禁用约束 100
3.4.7规则和默认值 101
3.4.8维护数据完整性的触发器 104
3.4.9比较 104
3.5视图 105
3.5.1简单视图 106
3.5.2利用T-SQL编辑视图 108
3.5.3删除视图 108
3.5.4审核 108
3.5.5加密视图 109
3.5.6架构绑定 110
3.5.7使用VIEW_METADATA 110
3.5.8索引视图 110
3.6脚本和批处理 112
3.6.1编写脚本的基础 112
3.6.2批处理 117
3.6.3OSQL 118
3.6.4动态SQL 119
3.7存储过程 120
3.7.1创建存储过程 120
3.7.2利用ALTER改变存储过程 121
3.7.3删除存储过程 122
3.7.4参数化 122
3.7.5流控制语句 123
3.7.6存储过程返回值 127
3.7.7异常处理 128
3.7.8过程的用途 134
3.7.9扩展的存储过程(XPs) 136
3.7.10系统存储过程 137
3.7.11递归 138
3.8用户自定义函式 141
3.8.1返回标量值的UDF 142
3.8.2返回表的UDF 145
3.8.3创建“系统”函式 149
3.9触发器 151
3.9.1触发器定义 152
3.9.2使用触发器维护引用完整性规则 155
3.9.3使用触发器维护数据完整性规则 156
3.9.4触发器的其他常见用途 156
3.9.5触发器的其他问题 157
3.9.6INSTEADOF触发器 160
3.10SQL游标 162
3.10.1游标的定义 162
3.10.2游标範围 163
3.10.3游标类型和扩展声明语法 165
3.10.4用FETCH语句操纵游标 172
3.10.5在游标中改变数据 173
3.11资料库快照 173
3.11.1稀疏档案 173
3.11.2工作方式 174
3.11.3创建资料库快照 176
3.11.4典型用法与限制 177
3.11.5恢复和删除资料库快照 180
3.12小结 182
第4章範式化和其他基本设计问题 185
4.1表和实体 185
4.2实现“範式化” 186
4.2.1準备工作 187
4.2.2第一範式 188
4.2.3第二範式 190
4.2.4第三範式 191
4.2.5其他範式 192
4.3关係 193
4.3.1一对一 193
4.3.2一对一或一对多 195
4.3.3多对多 195
4.4关係图 197
4.5调整资料库的範式化 204
4.5.1保持简化 205
4.5.2选择数据类型 205
4.5.3有关存储的错误 205
4.5.4良构资料库 206
4.6更多的关係图和关係 207
4.6.1一组关係类型 207
4.6.2实体盒 207
4.6.3关係线 208
4.6.4终止符 208
4.7数学建模 209
4.7.1逻辑模型的目标 209
4.7.2数学建模的组成 210
4.8处理基于档案的信息 211
4.9子类 213
4.9.1子类的类型 215
4.9.2实现子类 215
4.9.3子类的物理实现 217
4.9.4子类与扩展性 217
4.10资料库重用 218
4.10.1候选的重用资料库 218
4.10.2分解 219
4.10.3重用的代价 219
4.11通过分区实现扩展性 220
4.12小结 221
第5章SQLServer2005的开发模式 222
5.1开发人员信息中心 222
5.1.1应用程式设计概念 223
5.1.2资料库设计概念 234
5.1.3语言 242
5.1.4数据访问编程 242
5.1.5管理编程 242
5.1.6工具 245
5.2管理员信息中心 246
5.2.1概念 246
5.2.2使用资料库引擎 252
5.3结构设计师信息中心 255
5.4工作者信息中心 256
5.5设计与部署 256
5.5.1开发资料库计画 256
5.5.2在线上事务处理和决策支持 258
5.5.3规範化 259
5.5.4数据完整性 260
5.5.5查看扩展属性 261
5.6小结 263
第6章SQLServer2005下的XML
开发基础 264
6.1XML基础 265
6.1.1XML文档的组成 266
6.1.2良构XML 271
6.1.3确定元素和属性 272
6.2命名空间 272
6.3DTD和架构 274
6.3.1DTD 274
6.3.2XML架构集合 275
6.3.3DTD/架构和性能总结 279
6.4转换——XSLT 280
6.5FORXML子句 282
6.5.1RAW 283
6.5.2AUTO 288
6.5.3EXPLICIT 289
6.5.4OPENXML 307
6.5.5XML语法规则 316
6.5.6元素的语法 318
6.5.7注释的语法 318
6.5.8CDATA的语法 318
6.5.9namespaces的语法 319
6.5.10entity的语法 319
6.6小结 320
第7章複製 322
7.1bcp 322
7.1.1bcp语法 323
7.1.2bcp导出 326
7.1.3格式化档案 326
7.1.4bcp导入 329
7.1.5BULKINSERT 332
7.1.6OPENROWSET 333
7.1.7XML大容量载入 335
7.1.8最佳化大容量导入的方法 340
7.2支持分散式数据 341
7.3架构複製时的考虑 341
7.3.1独立性 342
7.3.2延迟性 342
7.3.3数据一致性 342
7.3.4架构一致性 342
7.3.5其他考虑 343
7.4发布比喻 343
7.4.1订阅刊物 345
7.4.2订阅伺服器类型 346
7.4.3过滤数据 346
7.5複製类型 346
7.5.1快照複製 347
7.5.2合併複製 349
7.5.3事务複製 353
7.5.4立即更新的订阅伺服器 355
7.5.5混合複製类型 356
7.6複製模型假设 356
7.6.1标準模型 357
7.6.2混合模型 358
7.6.3附加说明 359
7.7实现示例 359
7.7.1承包人供应公司 359
7.7.2清除服务 360
7.8计画複製 361
7.8.1数据考虑 361
7.8.2複製类型 362
7.8.3複製嚮导 362
7.9启用发布和分发 362
7.9.1启动嚮导 363
7.9.2默认配置 364
7.9.3禁用发布 365
7.9.4T-SQL过程 366
7.10事务/快照发布刊物 366
7.10.1创建和管理髮布嚮导 366
7.10.2配置之后 368
7.10.3T-SQL过程 371
7.11合併发布刊物 371
7.12异类资料库複製 371
7.12.1从Oracle发布数据 372
7.12.2将数据发布到非SQLServer订阅
伺服器上 379
7.13管理複製 380
7.13.1複製脚本 380
7.13.2支持各种複製 380
7.13.3发布到Internet上 381
7.13.4複製和架构变化 381
7.13.5複製监视器 383
7.13.6后续 384
7.14企业範围的自动化管理 384
7.14.1创建多伺服器环境 385
7.14.2管理作业 385
7.14.3轮询伺服器 386
7.14.4管理事件 387
7.15高可用性解决方案 388
7.16小结 390
第8章SQLServer2005的高级查询 391
8.1在SQLServer2005中使用XML 391
8.1.1xml数据类型表示形式 391
8.1.2xml数据类型 392
8.1.3xml数据类型列的索引 394
8.1.4管理伺服器上的XML架构集 395
8.1.5使用FORXML和OPENXML发布
和处理XML数据 395
8.1.6客户端XML功能 397
8.2使用本机XMLWeb服务 399
8.2.1本机XMLWeb服务的工作原理 399
8.2.2启用本机XMLWeb服务 400
8.2.3本机XMLWeb服务的安全性
方法 401
8.2.4设定伺服器以侦听本机XMLWeb
服务请求 401
8.2.5使用WSDL 401
8.2.6SOAP技术 401
8.3公共语言运行时 412
8.3.1开始使用CLR 413
8.3.2.NET框架中的套用 415
8.4高级查询 418
8.4.1建立嵌套子查询 419
8.4.2关联子查询 423
8.4.3衍生表 427
8.4.4EXISTS操作符 429
8.4.5混合数据类型:CAST和
CONVERT 432
8.4.6性能考虑 435
8.5小结 436
第9章综合服务 437
9.1体系结构 437
9.2综合服务工具和实用工具 439
9.2.1综合服务与Studio环境 439
9.2.2SSIS设计器及概念 440
9.2.3SSIS嚮导 453
9.2.4执行包实用工具 456
9.3SSIS设计 456
9.3.1生成解决方案 456
9.3.2设计和创建SSIS包 458
9.3.3部署包 467
9.4典型用途 472
9.5小结 474
第10章全文检索 475
10.1SQLServer的存储方式 476
10.1.1各种版本的存储共性 477
10.1.2SQLServer7.0以前版本的存储
方式 480
10.1.3SQLServer7.0及以后版本的存储
方式 481
10.2索引定义 485
10.2.1B-树 486
10.2.2访问数据的原理 488
10.2.3索引类型和索引遍历 489
10.3创建和删除索引 502
10.3.1CREATEINDEX语句 502
10.3.2创建约束时暗含的索引 505
10.3.3XML索引 506
10.4选择创建索引的时机 512
10.4.1可选择性 512
10.4.2成本 513
10.4.3选择聚集索引 513
10.4.4列顺序问题 515
10.4.5删除索引 515
10.5维护索引 516
10.5.1碎片 516
10.5.2定义碎片与页拆分的可能性 516
10.6全文检索体系结构 520
10.7设定全文索引和分类 521
10.7.1授予资料库全文搜寻能力 522
10.7.2创建全文目录 522
10.7.3给独立的表启用全文检索功能 523
10.7.4索引组装 526
10.8全文查询语法 528
10.8.1CONTAINS 528
10.8.2FREETEXT 529
10.8.3CONTAINSTABLE 529
10.8.4FREETEXTTABLE 531
10.8.5处理短语 531
10.8.6近似(Proximity) 533
10.8.7前缀条件 533
10.8.8权重 534
10.8.9词尾变化 535
10.8.10对等级的简单总结 535
10.9噪声单词 535
10.10语言 536
10.11sp_fulltext_service 537
10.12小结 537
第11章事务、锁和分散式查询 539
11.1事务 540
11.1.1BEGINTRAN 541
11.1.2COMMITTRAN 541
11.1.3ROLLBACKTRAN 541
11.1.4SAVETRAN 541
11.2事务日誌 542
11.2.1失败和恢复 544
11.2.2日誌传送 545
11.2.3隐式事务 546
11.2.4检查点 547
11.2.5截断 549
11.2.6收缩事务日誌 550
11.2.7使用事务日誌备份 552
11.2.8事务日誌物理体系结构 554
11.3锁和并发性 555
11.3.1锁可以阻止的问题 556
11.3.2可以加锁的资源 560
11.3.3锁增加和锁对性能的影响 560
11.3.4锁模式 563
11.3.5锁的兼容性 565
11.3.6说明特定锁的类型 566
11.4设定隔离层 569
11.5快照隔离 572
11.5.1隔离级别 572
11.5.2行版本控制 573
11.5.3快照隔离事务示例 577
11.5.4通过行版本控制的已提交读
示例 578
11.6处理死锁 580
11.6.1指出存在死锁 580
11.6.2选择死锁牺牲品 581
11.6.3避免死锁 581
11.7故障转移群集 583
11.8分散式事务 584
11.8.1準备阶段 584
11.8.2提交阶段 585
11.9分散式查询 585
11.9.1创建连结伺服器 586
11.9.2使用连结伺服器 588
11.9.3从远程伺服器上收集元数据 593
11.9.4创建和使用通道查询 595
11.9.5在远程数据源上使用特别查询 597
11.9.6其他分散式查询的注意事项 598
11.10分散式分区视图 600
11.11小结 607
第12章SQLServer2005服务 609
12.1服务分割器 609
12.1.1ServiceBroker概念 610
12.1.2ServiceBroker体系结构 612
12.2分析服务 618
12.2.1终端用户的要求 618
12.2.2维度资料库 622
12.2.3OLAP存储类型 627
12.2.4数据仓库 628
12.2.5数据转换 630
12.2.6元数据 631
12.2.7数据挖掘模型 634
12.2.8数据挖掘算法 634
12.2.9分析服务体系结构 637
12.2.10商业智慧型增强功能 642
12.3报表服务 643
12.3.1创建和管理报表 645
12.3.2功能与概念 646
12.3.3报表服务体系结构 649
12.4通知服务 650
12.4.1通知服务定义 650
12.4.2关键术语 651
12.4.3通知服务体系结构 652
12.5小结 654
第13章性能调试与最佳化 655
13.1索引选择 656
13.2资料库引擎最佳化顾问 657
13.2.1工作负荷 658
13.2.2注意事项 659
13.3数据处理 660
13.4策略要求 661
13.5程式维护 662
13.6最佳化存储过程 662
13.6.1儘可能缩短事务 662
13.6.2儘可能使用限制最少的事务隔
离层 662
13.6.3必要时可以执行多种解决方案 662
13.6.4儘量避免使用游标 663
13.7使用临时表 663
13.8硬体考虑 663
13.8.1伺服器的独占使用 664
13.8.2I/O与CPU速度 664
13.8.3OLTP与OLAP 667
13.8.4线上或离线 667
13.8.5宕机 667
13.8.6丢失数据 668
13.8.7性价比 668
13.8.8伺服器 668
13.8.9理想系统 668
13.9解决方法 669
13.9.1各种显示计画和统计信息 669
13.9.2资料库一致性检验程式 673
13.9.3查询控制器(QueryGovernor) 675
13.9.4SQLServerProfiler(事件探
查器) 676
13.9.5性能监视器(Perfmon) 679
13.10小结 681
第14章SQLServer2005管理 682
14.1安全性基础 683
14.1.1固定登录ID和口令 683
14.1.2口令有效期 684
14.1.3长度与组成 685
14.1.4登录次数 686
14.1.5存储用户和口令 687
14.2安全性选项 687
14.2.1SQLServer安全性 688
14.2.2作业系统集成安全性 691
14.3用户许可权 693
14.3.1对特定资料库授予访问权 693
14.3.2在资料库中授予对象许可权 694
14.3.3用户许可权和语句级的许可权 697
14.4伺服器和资料库角色 698
14.4.1伺服器角色 698
14.4.2资料库角色 699
14.5应用程式角色 702
14.5.1创建应用程式角色 703
14.5.2给应用程式角色添加许可权 703
14.5.3使用应用程式角色 703
14.5.4删除应用程式角色 704
14.6XML的安全性 704
14.7更高级的安全性 705
14.7.1处理Guest账户 705
14.7.2TCP/IP连线埠设定 706
14.7.3禁用sa账户 706
14.7.4xp_cmdshell 706
14.7.5其他工具 706
14.8调度表作业 707
14.8.1创建操作员 708
14.8.2创建作业和任务 710
14.9备份和还原 720
14.9.1重要性及目标 721
14.9.2备份介质 722
14.9.3备份 724
14.9.4恢複数据 726
14.9.5恢复模式 728
14.9.6恢复最佳化 730
14.9.7SQLServer代理 733
14.10自动回响警报 734
14.10.1在资料库引擎中创建自动响
应警报 735
14.10.2在T-SQL中创建自动回响
警报 735
14.11全文目录操纵 737
14.11.1备份与恢复 737
14.11.2安排注入的调度 737
14.12异地複製 737
14.12.1複製资料库嚮导 737
14.12.2备份和恢复 738
14.12.3连线/分离 738
14.13索引重建 738
14.14归档数据 739
14.15小结 740
第15章案例精解 741
15.1AdventureWorks设计基础 741
15.2AdventureWorks总体设计 742
15.2.1所有者 744
15.2.2相关表 746
15.3AdventureWorks示例 749
15.3.1查询示例 749
15.3.2分区表和分区索引示例 757
15.3.3CLR触发器 760
15.4数据挖掘算法 772
15.4.1决策树算法 772
15.4.2时序算法 774
15.4.3聚类分析算法 777
15.4.4关联算法 778
15.4.5顺序分析和聚类分析算法 780
15.5Xquery语言 781
15.6HTTP访问 782
15.6.1设定HTTP访问 783
15.6.2基于URL的查询 785
15.6.3使用模板 786
15.6.4POST 789
15.6.5XPath 791
15.6.6设计结果的样式 795
15.7使用IcommandStream设定XML命令 798
15.8小结 821
附录A函式类别 822
附录B用WMI编写管理函式 823
B.1SQLServer脚本管理的历史和未来 823
B.2WMI工具与结构 824
B.3WMI对象基本知识 826
B.3.1类 827
B.3.2实例 828
B.3.3关联 829
B.3.4命名空间 829
B.4安装WMISQLServer管理提供商 830
B.5连线到WMI 834
B.6实例检索操作 836
B.6.1枚举所有实例 837
B.6.2得到特定实例 838
B.6.3实例查询 841
B.6.4关联查询 842
B.6.5从实例调用程式中得到最好
性能的技巧 846
B.7修改实例 849
B.8创建实例 851
B.9删除实例 852
B.10调用方法 853
B.10.1动态方法 853
B.10.2静态方法 856
B.11使用事件 858
B.11.1实例事件 858
B.11.2非实例事件 863
B.12静态设定类 864
B.13访问限定词 866
B.13.1使用SQLServer特定的限定词 869
B.13.2SQLVersion 869
B.13.3WriteAtCreate和WriteAtUpdate 870
B.14小结 870
附录CSQLCMD 871
转载请注明出处海之美文 » SQL Server 2005数据管理与开发从入门到精通