Microsoft SQL Server 2005 T-SQL& NET高级编程 第3版PDF电子书下载
- 电子书积分:17 积分如何计算积分?
- 作 者:(美)Dejan Sunderic著;曹俊,姜龙芳译
- 出 版 社:北京:清华大学出版社
- 出版年份:2008
- ISBN:9787302173403
- 页数:574 页
第1章SQL Server 2005环境与工具 1
1.1 SQL Server 2005工具 2
1.1.1 SQL Server Configuration Manager 3
1.1.2 SQL Server Management Studio 6
1.1.3 SQLCMD实用程序 10
1.1.4 SQL Server Profiler 11
1.1.5帮助文档和SQL Server Books Online 11
1.2 Management Studio中的基本操作 12
1.2.1存储结构的定义 12
1.2.2 Management Studio中存储过程的执行 12
1.2.3编辑存储过程 15
1.2.4创建存储过程 15
1.2.5在Query窗口中编辑存储过程 17
1.2.6语法错误 19
1.2.7查看和编辑表 21
1.2.8修改表结构 23
第2章 存储过程设计的一些概念 25
2.1存储过程的剖析 26
2.1.1组成部分 26
2.1.2功能 29
2.1.3语法 35
2.2存储过程的类型 37
2.3管理存储过程 38
2.3.1列出存储过程 38
2.3.2查看存储过程的代码 39
2.3.3重命名存储过程 40
2.3.4删除存储过程 41
2.3.5列出被依赖和依赖对象 41
2.4存储过程在数据库应用程序开发中的作用 43
2.4.1增强数据完整性 43
2.4.2复杂业务规则和约束的一致实现 44
2.4.3模块化设计 44
2.4.4可维护性 44
2.4.5降低的网络通信量 44
2.4.6较快的执行 45
2.4.7安全性的增强 45
第3章 基本Transact-SQL编程结构 47
3.1 T-SQL标识符 48
3.2数据库对象限定符 49
3.3数据类型 51
3.3.1字符串型 52
3.3.2 Unicode字符串型 53
3.3.3日期和时间型 54
3.3.4整型 55
3.3.5近似数值型 56
3.3.6精确数值型 56
3.3.7货币型 57
3.3.8二进制型 57
3.3.9特殊类型 58
3.3.10 Transact-SQL用户自定义数据类型 61
3.4变量 62
3.4.1局部变量 62
3.4.2全局变量 66
3.4.3表变量 68
3.5流程控制语句 69
3.5.1注释 70
3.5.2语句块:Begin*End 72
3.5.3条件执行:If语句 73
3.5.4循环:While语句 77
3.5.5无条件执行:GoTo语句 79
3.5.6调度执行:WaitFor语句 80
3.6游标 81
3.6.1 Transact-SQL游标 82
3.6.2与游标相关的语句和函数 85
3.6.3使用游标的问题 86
3.6.4游标的正确用法 87
第4章 函数 89
4.1函数的用法 90
4.1.1用函数来选择和赋值 90
4.1.2作为选择条件的一部分 91
4.1.3在表达式中使用函数 91
4.1.4作为Check和 Default约束 91
4.1.5取代表 92
4.2函数的类型 93
4.2.1标量函数 93
4.2.2行集函数 120
第5章 复合Transact-SQL结构:批处理、脚本和事务 127
5.1批处理 128
5.1.1使用批处理 130
5.1.2批处理与错误 130
5.1.3 DDL批处理 133
5.1.4自给自足的内容 133
5.2脚本 134
5.3事务 137
5.3.1自动提交事务 137
5.3.2显式事务 138
5.5.3隐式事务 140
5.3.4事务处理体系结构 140
5.3.5嵌套事务 141
5.3.6命名事务 145
5.3.7保存点 146
5.3.8加锁 148
5.3.9分布式事务 152
5.3.10与事务相关的典型问题 154
第6章 错误处理 157
6.1 Raiserror语句 158
6.2使用错误处理 160
6.3添加错误处理代码的原因 160
6.4基于@@Error的错误处理 161
6.5 Try-Catch语句 163
6.5.1捕获的错误类型 164
6.5.2 Catch块的函数 166
6.5.3带显式事务的Try-Catch语句 167
6.5.4死锁重试 170
6.5.5 Try-Catch语句嵌套 174
6.5.6错误处理体系结构:使用Try-Catch语句 174
6.6 Xact Abort选项的设置 175
6.6.1错误处理体系结构:基于Set Xact Abort On设置 176
6.6.2错误处理体系结构:设置Xact Abort且事物嵌套为零 180
第7章 特殊存储过程类型 187
7.1用户自定义存储过程 188
7.2系统存储过程 188
7.3 CLR存储过程 189
7.4扩展存储过程 190
7.4.1扩展存储过程的设计 190
7.4.2注册扩展存储过程 194
7.5临时存储过程 196
7.6全局临时存储过程 197
7.7远程存储过程 197
第8章 视图 199
8.1标准SQL视图的设计 200
8.1.1语法 201
8.1.2 Enterprise Manager中的视图设计 202
8.1.3安全性 202
8.1.4执行计划中的标准SQL视图 203
8.1.5视图的限制 203
8.1.6用视图编辑数据 204
8.2动态视图 205
8.3临时视图——通用表表达式 205
8.3.1非递归CTE的限制 206
8.3.2递归CTE 206
8.4 INFORMATION SCHEMA视图 208
8.5索引视图 209
8.5.1索引视图限制 209
8.5.2执行计划中的索引视图 210
8.5.3视图上的非群集索引 210
8.5.4性能影响 211
8.6分区视图 211
8.6.1水平和垂直分区 211
8.6.2分布式分区视图 213
8.6.3分布式分区视图的执行计划 218
8.6.4可更新的分布式分区视图 221
8.6.5分布式系统的稳定性和性能 222
8.6.6简单的联合服务器 223
8.7使用SQL视图 223
8.7.1导出和导入 223
8.7.2安全性实现 223
8.7.3降低复杂性 224
8.7.4性能提升 226
第9章 触发性 227
9.1 DML触发器 228
9.1.1 Afterer触发器的物理设计 228
9.1.2插入和删除虚拟表 229
9.1.3触发器激活条件 231
9.1.4 After触发器的完整语法 232
9.1.5处理多条记录上的修改 235
9.1.6嵌套触发和递归触发 236
9.1.7 After触发器限制 236
9.1.8 Instead-of触发器 238
9.1.9视图上的触发器 239
9.1.10 DML触发器的执行次序 241
9.2 DDL触发器 242
9.2.1 DDL触发器的作用域和事件 243
9.2.2 EventData()函数 244
9.2.3 DDL触发器的语法 245
9.3管理触发器 246
9.3.1在Management Studio中管理DML触发器 246
9.3.2在Management Studio中管理DDL触发器 247
9.3.3用Transact-SQL语句管理触发器 247
9.4触发器的设计建议 250
9.4.1尽可能快地退出触发器 250
9.4.2简化触发器的代码 251
9.4.3按功能实现触发器 252
9.4.4不要在触发器内使用Select和Print 252
9.4.5根本不要使用触发器 252
9.5触发器中的事务管理 252
9.6使用触发器 253
9.6.1级联删除 254
9.6.2聚集 257
9.6.3增强不同服务器或数据库上的对象的模式完整性 259
第10章 用户自定义函数 263
10.1标量用户自定义函数的设计 264
10.1.1副作用 265
10.1.2内置函数的使用 266
10.1.3加密 266
10.1.4模式绑定 266
10.2表*值用户自定义函数 267
10.3在Management Studio中管理用户自定义函数 271
第11章SQL Server 2005中的*NET编程基础 273
11.1非托管和托管代码 274
11.2公共语言运行库 274
11.3 SQL Server 2005中的CLR集成 275
11.3.1优缺点 276
11.3.2支持和不支持的功能 276
11.3.3所需最小空间 277
11.4 Visual Studio 2005中CLR数据库对象的开发、部署和使用 278
11.5不使用Visual Studio 2005时CLR数据库对象的开发和部署 281
11.5.1开发代码 282
11.5.2编译程序 282
11.5.3向SQL Server数据库中加载程序集 284
11.5.4创建SQLCLR数据库对象 285
11.6为程序集和CLR数据库对象编目录 286
11.6.1为程序集编目录 286
11.6.2为过程编目录 287
11.6.3 NET Framework的版本 289
第12章CLR存储过程开发基础 291
12.1 CLR存储过程的结构 292
12.2从CLR过程中访问数据 293
12.3使用存储过程的基本操作 294
12.3.1返回值 294
12.3.2连接上下文 295
12.3.3返回结果 296
12.3.4返回自定义记录 298
12.3.5 CLR存储过程中的参数 300
12.4带正规ADO.NET对象的操作 301
12.4.1 SqlCommand 301
12.4.2 SqlDataReader 303
12.5管理LOB参数 304
第13章CLR函数与触发器 311
13.1 CLR函数 312
13.1.1标量*值CLR函数 312
13.1.2 SqlFunction属性 314
13.1.3表*值CLR函数 316
13.2 CLR触发器 327
13.2.1支持的特性 327
13.2.2 DML触发器的创建 327
13.2.3 DDL触发器的创建 332
第14章CLR数据库对象高级主题 337
14.1 CLR用户自定义类型(UDT) 338
14.1.1托管UDT的结构 339
14.1.2不使用Visual Studio 2005部署CLR UDT 346
14.1.3使用CLR用户自定义类型 346
14.1.4跨数据库的用户自定义类型 353
14.2是否使用UDT 354
14.3用户自定义聚合CLR函数 355
14.4 CLR代码中的事务 365
14.4.1使用TransactionScope类 365
14.4.2事务选项 367
14.4.3分布式事务 368
14.4.4显式事务 370
14.4.5新事务泛型的优点 372
14.5是否设计CLR(设计与性能考虑) 372
14.6警告 373
第15章 高级存储过程编程 375
15.1动态构造的查询 376
15.1.1执行字符串 376
15.1.2通过表单查询 377
15.1.3数据脚本生成器 379
15.1.4使用sp executesql存储过程 384
15.1.5安全隐患 385
15.2使用timestamp值的乐观锁 388
15.2.1 timestamp数据类型 389
15.2.2 TSEqual()函数 391
15.3全文本搜索和索引 392
15.4嵌套存储过程 393
15.4.1用临时表向嵌套存储过程传递记录集 393
15.4.2用游标向嵌套存储过程传递记录集 396
15.4.3如何处理存储过程的结果集 397
15.5使用标识值 403
15.5.1标准问题和答案 403
15.5.2标识值与触发器 404
15.6 GUID 405
15.7带Min()或Max()函数的循环 407
15.8带sp_MSForEachTable和sp_MSForEachDb的循环 408
15.9特性管理 410
第16章 调试 413
16.1什么是bug 414
16.2调试过程 414
16.2.1标识阶段 414
16.2.2解决阶段 416
16.3调试工具与技术 417
16.4调试CLR数据库对象 421
16.5简单的调试器 424
16.5.1生产环境中的执行 427
16.5.2嵌套存储过程 428
16.5.3输出子句 428
16.6 SQL Profiler 429
16.7典型错误 433
16.7.1处理空值 433
16.7.2从结果集中为变量赋值 434
16.7.3没有记录受影响 434
16.7.4错误的大小或数据类型 434
16.7.5默认长度 435
16.7.6触发器的回退 435
16.7.7警告和较低优先级的错误 435
16.7.8返回代码与Raiserror语句的使用 436
16.7.9嵌套注释 436
16.7.10延迟名称解析 436
16.7.11游标 437
16.7.12过分自信 437
第17章 源代码管理 439
17.1 Microsoft Visual SourceSafe介绍 440
17.2管理Visual SourceSafe数据库 441
17.3在Visual Studio.NET中向Visual SourceSafe添加数据库对象 442
17.4在Visual Studio.NET中管理Create脚本 444
17.5 Visual SourceSafe Explorer 445
17.5.1历史 446
17.5.2标签与版本 448
17.6向Visual SourceSafe添加数据库对象:传统方法 449
17.6.1用Script Wizard创建脚本 449
17.6.2用TbDbScript创建脚本 451
17.6.3用TbDir2Vss.vbs向Visual SourceSafe中添加脚本 453
第18章 数据库部署 455
18.1整个数据库的部署:传统方法 456
18.1.1在Transact-SQL中附着与分离数据库 457
18.1.2在Management Studio中附着和分离 458
18.1.3备份与恢复 459
18.1.4潜在的问题 459
18.2单个对象的部署 460
18.2.1部署脚本:传统方法 460
18.2.2脚本化数据:传统方法 460
18.2.3在Visual Studio NET中脚本化数据 461
18.2.4部署脚本:传统方法 462
18.2.5在Visual Studio.NET中部署Create脚本 469
18.2.6递增的构件:传统方法 471
18.2.7 Visual Studio.NET中的递增的构件 472
第19章 安全 473
19.1安全体系结构 474
19.1.1身份验证与授权 474
19.1.2主体 474
19.1.3可保护对象 475
19.1.4访问级别 475
19.1.5角色 480
19.1.6所有权链 482
19.1.7交叉数据库拥有者链 482
19.1.8执行环境上下文的切换 483
19.2实现安全性 483
19.2.1身份验证模式的选择 483
19.2.2管理登录名 484
19.2.3授予数据库访问权限 486
19.2.4赋予权限 488
19.3登录名与用户名的同步 490
19.4用存储过程、用户自定义函数和视图管理应用程序安全 493
19.5用代理用户管理应用程序安全 496
19.6用应用程序角色管理应用程序安全 496
第20章Web搜索引擎的存储过程 499
20.1环境特征 500
20.2一个简单的解决方案 500
20.3缺点 501
20.4可用的解决方案 502
20.4.1结果分割 503
20.4.2快速查询 511
20.4.3高级查询 515
20.4.4新的解决方案:行版本 518
第21章SQL Server环境的交互作用 525
21.1运行程序 526
21.2运行Windows脚本文件 527
21.3 OLE Automation/COM对象的执行 527
21.4数据类型转换 530
21.5 运行SQL Server 2005 IntergationServices(SSIS)包 531
21.6运行DTS包 531
21.7在DTS包中实现循环 532
21.8与NT注册表交互作用 533
21.8.1 xp regread 534
21.8.2 xp regwrite 534
21.9作业 535
21.9.1作业管理 535
21.9.2 Job Scheduler的替换方法 539
21.9.3维护作业的存储过程 540
21.9.4操作员和警报 543
21.10电子邮件 543
21.10.1 Database Mail 544
21.10.2配置Database Mail 544
21.10.3发送电子邮件 546
21.10.4检查状态 547
21.11将存储过程作为Web服务提供 547
附录A命名约定 549
附录B存储过程编译、存储和重用 559
附录C SQL Server 2005中的数据类型 571
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《全国职业院校工业机器人技术专业规划教材 工业机器人现场编程》(中国)项万明 2019
- 《编程超有趣 奇妙Python轻松学 第1辑》HelloCode人工智能国际研究组 2018
- 《我的第一套编程启蒙绘本 看事件 开始了》编程猫教研团队编绘 2019
- 《STEM教育丛书 麦昆机器人和Micro:bit图形化编程》张弛责任编辑;(中国)陈宝杰,沙靓雯 2019
- 《ROS机器人编程与SLAM算法解析指南》陶满礼 2020
- 《我的第一套编程启蒙绘本 123 序列来啦》编程猫教研团队编绘 2019
- 《高等院校计算机任务驱动教改教材 C语言编程思维 第2版》(中国)陈萌,鲍淑娣 2019
- 《我的第一套编程启蒙绘本 咦 什么在 循环》编程猫教研团队编绘 2019
- 《工业机器人离线编程与仿真》张明文,封家诚,王鑫主编 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019