第1章 SQL Server 2000概述 1
1.1 SQL Server 综述 1
1.2 客户/服务器模型简介 1
1.2.1 客户/服务器介绍 1
1.2.2 SQL Server 的客户/服务器特性 2
1.3 SQL Server 2000的新特性 3
1.3.1 关系数据库功能的增强 3
1.3.2 XML支持 5
1.3.3 图形管理的功能增强 5
1.3.4 其他功能增强 5
1.4 SQL Server 2000的主要组件 6
1.4.1 Books Online(联机帮助) 6
1.4.2 Client Network Utility 和Server Network Utility 7
1.4.3 Configure SQL XML Support in IIS 8
1.4.4 Enterprise Manager 8
1.4.5 Import and Export Data 10
1.4.6 Profiler 10
1.4.7 Query Analyzer 11
1.4.8 Service Manager 12
1.5 SQL Server 2000的安装 12
1.5.1 操作系统和硬件需求 12
1.5.2 安装过程 13
第2章 Transact-SQL语言基础 22
2.1 Transact-SQL简述 22
2.2 标识符 22
2.2.1 常规标识符 22
2.2.2 定界标识符 23
2.2.3 使用举例 23
2.3 数据类型 24
2.3.1 系统数据类型 24
2.3.2 用户定义的类型 33
2.4 SQL运算符 34
2.4.1 算术运算符 35
2.4.2 赋值运算符 35
2.4.3 位运算符 35
2.4.4 比较运算符 36
2.4.5 逻辑运算符 37
2.4.6 字符串连接运算符 37
2.4.7 一元运算符 37
2.4.8 运算符优先级 38
第3章 SQL的内建函数 39
3.1 行集函数 39
3.1.1 CONTAINSTABLE 40
3.1.2 FREETEXTTABLE 41
3.1.3 OPENDATASOURCE 42
3.1.4 OPENQUERY 42
3.1.5 OPENROWET 43
3.1.6 OPENXML 44
3.2 聚集函数 45
3.2.1 AVG和SUM 46
3.2.2 MAX和MIN 46
3.2.3 COUNT和COUNT_BOG 47
3.2.4 CHECKSUM和CHECKSUM_AGG 48
3.2.5 STDEV、STDEV、VAR和VARP 49
3.2.6 GROUPING 50
3.3 标量函数 50
3.3.1 配置函数 50
3.3.2 游标函数 51
3.3.3 日期时间函数 52
3.3.4 数学函数 54
3.3.5 数据元函数 55
3.3.6 安全函数 63
3.3.7 字符串函数 64
3.3.8 系统函数 66
3.3.9 系统统计函数 70
3.3.10 文本和图像函数 70
第4章 Transact-SQL编程结构 73
4.1 SQL变量 73
4.1.1 局部变量 73
4.1.2 全局变量 74
4.2 批处理 75
4.3 注释 77
4.4 流控制语句 78
4.4.1 语句块定义语句:BEGIN…END 78
4.4.2 条件执行语句:IF…ELSE 79
4.4.3 循环语句:WHILE 80
4.4.4 跳转语句:GOTO 81
4.4.5 分支语句:CASE 82
4.4.6 无条件返回语句:RETURN 83
4.4.7 延迟语句:WAITEFOR 85
第5章 SELECT查询语句 86
5.1 SELECT从句 87
5.1.1 <select_list>参数 87
5.1.2 ALL和DISTINCT参数 90
5.1.3 TOP选项 90
5.2 INTO从句 92
5.3 FROM从句 93
5.3.1 table_source 93
5.3.2 joined_table和joined_type 94
5.4 WHERE从句 99
5.4.1 表达式比较运算 100
5.4.2 模式匹配符运算 100
5.4.3 范围比较运算 102
5.4.4 空值比较 103
5.4.5 CONTAINS 103
5.4.6 FREETEXT 106
5.4.7 IN子查询 106
5.4.8 比较子查询 107
5.4.9 EXISTS子查询 108
5.5 GROUP BY从句 109
5.6 HAVING从句 111
5.7 UNION运算符 112
5.8 ORDER BY从句 113
5.9 COMPUTE从句 114
5.10 FOR从句 117
5.11 OPTIONS从句 118
第6章 数据库对象操作 119
6.1 数据库操作 119
6.1.1 创建数据库 119
6.1.2 修改数据库 126
6.1.3 删除数据库 131
6.2 表 132
6.2.1 创建表 132
6.2.2 修改表 136
6.2.3 表数据操作 140
6.2.4 删除表 146
6.3 视图 147
6.3.1 创建视图 148
6.3.2 使用视图 155
6.3.3 修改视图 161
6.3.4 删除视图 161
第7章 索引和游标 163
7.1 索引类型 163
7.1.1 聚簇索引 163
7.1.2 非聚簇索引 164
7.1.3 二者比较 164
7.2 创建索引 165
7.2.1 使用CREATE INDEX语句创建 165
7.2.2 通过SQL Server Enterprise Manager创建 167
7.2.3 通过索引向导创建 168
7.3 全文索引 171
7.3.1 通过存储过程创建 172
7.3.2 通过SQL Server Enterprise Manager创建 176
7.4 删除索引 179
7.5 游标 180
7.5.1 声明游标 180
7.5.2 打开游标 182
7.5.3 从游标中读取数据行 183
7.5.4 关闭和删除游标 184
7.6 游标应用 184
7.6.1 通过游标读取数据 185
7.6.2 通过游标修改数据 188
第8章 数据库完整性组件 190
8.1 数据完整性简介 190
8.2 约束 191
8.2.1 DEFAULT约束 191
8.2.2 CHECK约束 192
8.2.3 PRIMARY KEY约束 193
8.2.4 UNIQUE约束 194
8.2.5 FOREIGN KEY约束 194
8.3 默认和规则 195
8.3.1 默认 195
8.3.2 规则 200
8.4 存储过程 203
8.4.1 创建存储过程 204
8.4.2 执行存储过程 209
8.4.3 存储过程参数 210
8.4.4 存储过程的自动执行 213
8.5 触发器 213
8.5.1 创建触发器 214
8.5.2 inserted表和deleted表 216
8.5.3 修改触发器 219
8.5.4 触发器的使用 219
8.5.5 删除触发器 223
8.6 事务和锁 223
8.6.1 事务的类型 224
8.6.2 事务处理中的语句 225
8.6.3 分布式事务处理 226
8.6.4 锁 227
第9章 安全控制 230
9.1 SQL Server安全 230
9.1.1 认证阶段 230
9.1.2 许可确认阶段 232
9.2 用户登录账号及管理 233
9.2.1 Windows NT登录账号 233
9.2.2 SQL Server登录账号 234
9.2.3 用户管理 236
9.3 角色 237
9.3.1 固定服务器角色 237
9.3.2 固定数据库角色 239
9.3.3 用户自定义数据库角色 239
9.4 许可设置 242
9.4.1 语句许可 242
9.4.2 对象许可 243
9.4.3 隐含许可 245
第10章 ODBC数据库应用程序设计 248
10.1 ODBC体系结构 248
10.1.1 ODBC应用程序 249
10.1.2 ODBC驱动程序管理器 249
10.1.3 ODBC驱动程序 249
10.1.4 数据源 249
10.2 配置ODBC数据源 249
10.3 基本的应用程序步骤 255
10.3.1 连接数据源 255
10.3.2 初始化阶段 255
10.3.3 SQL处理 256
10.3.4 结束阶段 256
10.4 ODBC编程基础 256
10.4.1 头文件和链接库 256
10.4.2 一个简单应用程序 257
10.5 连接数据源 259
10.5.1 分配句柄 259
10.5.2 设置属性 260
10.5.3 连接数据源 265
10.5.4 断开数据源 271
10.5.5 释放句柄 272
10.6 初始化 272
10.6.1 确定驱动器支持能力 272
10.6.2 分配语句句柄 273
10.6.3 设置语句属性 274
10.7 SQL操作 277
10.7.1 检索数据库对象信息 277
10.7.2 SQL语句执行 278
10.7.3 参数传递 281
10.7.4 结果集合的处理 294
10.8 错误诊断 318
10.8.1 返回代码 318
10.8.2 诊断记录 319
第11章 用DAO和ODBCDirect开发SQL Server数据库应用程序 324
11.1 DAO体系结构 326
11.2 使用DAO的简单流程 329
11.3 在Visual Basic 中添加DAO3.6引用 330
11.4 在Visual Basic 中使用DAO对象 331
11.4.1 创建Workspace对象 332
11.4.2 打开一个Database对象连接到SQL Server 332
11.4.3 使用TableDefs集合和TableDef对象 337
11.4.4 使用QueryDefs集合和QueryDef对象 340
11.4.5 使用Recordset对象 345
11.4.6 使用SQL Pass Through 执行动态SQL 353
11.4.7 错误处理 364
11.4.8 终止Jet引擎 364
11.5 DAO常用性能提示 365
11.6 ODBCDirect概述 365
11.7 ODBCDirect体系结构 366
11.8 使用ODBCDirect的简单流程 367
11.9 在Visual Basic中使用OBDCDirect 368
11.9.1 创建ODBCDirect Workspace对象 368
11.9.2 连接到SQL Server 2000 369
11.9.3 使用ODBCDirect检索数据 372
11.9.4 使用ODBCDirect修改数据 377
11.9.5 使用ODBCDirect执行动态的SQL语句 380
11.9.6 使用ODBCDirect运行存储过程 381
11.10 使用ODBCDirect的高级数据库功能 382
11.10.1 使用多个结果集 382
11.10.2 异步操作 385
11.10.3 使用事务 385
第12章 使用OLE DB和ADO开发SQL Server数据库应用程序 388
12.1 OLE DB和通用数据访问 388
12.2 OLE DB体系结构 389
12.3 ADO概述 390
12.4 ADO体系结构 391
12.5 使用ADO的简单流程 392
12.6 在Visual C++中创建简单的网格视图应用程序 393
12.6.1 Visual C++OLE DB及ADO类概述 393
12.6.2 创建ADO工程 393
12.6.3 增加对ADO控制的引用 399
12.6.4 使用ADO数据控件在DATAGRID控件中显示记录集 401
12.7 在Visual C++中了解ADO类 404
12.7.1 Connection对象 404
12.7.2 Command对象 406
12.7.3 Recordset对象 408
12.7.4 Fields集合和Field对象 411
12.7.5 Parameters集合和Parameter对象 413
12.7.6 Errors集合和Error对象 413
12.7.7 Properties集合和Property对象 414
12.7.8 在Visual C++中使用ADO对象的预备工作 414
12.8 在Visual C++中ADO的代码实现 415
12.8.1 连接到SQL Server 2000 415
12.8.2 使用ADO Recordset检索数据 416
12.8.3 使用预备SQL 和Command对象 419
12.8.4 使用ADO修改数据 421
12.8.5 错误处理 424
12.8.6 事务处理 426
第13章 使用Access开发SQL Server数据库应用程序 427
13.1 使用Access作为前端开发工具 428
13.2 Microsoft Access 的网络体系结构 429
13.3 连接到SQL Server 429
13.3.1 先决条件 429
13.3.2 安装SQL Server ODBC驱动程序 430
13.3.3 配置ODBC数据源 430
13.3.4 创建链接表 435
13.4 使用查询工具 439
13.5 使用窗体工具 443
13.6 使用报表工具 447
13.7 使用数据页工具 452
13.8 使用宏 456
13.8.1 宏的定义 456
13.8.2 创建宠 456
13.8.3 运行宏 459
13.8.4 将宏转换为Visual Basic模块 461
13.9 使用VBA代码模块创建SQL Server应用程序 462
13.9.1 什么是VBA 462
13.9.2 如何使用VBA连接SQL 462
13.9.3 编辑VBA代码 462
13.9.4 编写VBA程序 463
第14章 使用Visual Basic开发SQL Server数据库应用程序 464
14.1 Visual Basic简介 464
14.2 使用ADO 465
14.3 ADO的对象模型 466
14.4 在Visual Basic中增加对ADO的引用 466
14.5 使用ADO数据控件 468
14.5.1 添加ADO数据控件 468
14.5.2 ADO数据控件的属性、方法和事件 469
14.5.3 连接到SQL Server数据库并创建数据源 471
14.5.4 使用简单约束控件显示数据 480
14.5.5 使用复杂约束控件显示数据 483
14.5.6 使用数据窗体向导 491
14.6 使用Visual Basic进行编程 497
14.6.1 打开一个连接 497
14.6.2 终止一个连接 498
14.6.3 检索数据 498
14.6.4 使用ADO Recordset对象修改数据 499
14.6.5 关闭Recordset对象 500
14.6.6 使用ADO Command对象执行动态的SQL语句 500
14.6.7 使用ADO Command对象修改数据 501
14.6.8 使用Command对象执行存储过程 502
14.6.9 错误处理 503
14.6.10 一个完整的Visual Basic例程 504
第15章 使用Power Builder开发SQL Server 2000数据库应用程序 512
15.1 建立Power Builder与SQL Server的连接 513
15.1.1 配置ODBC数据源 513
15.1.2 连接到SQL Server数据库 517
15.2 使用画笔来开发SQL Server应用程序 521
15.2.1 使用“Table”画笔 521
15.2.2 使用“Database”画笔 524
15.3 使用数据窗口对象开发SQL Server数据库应用程序 531
15.3.1 创建连接到SQL Server的数据窗口 532
15.3.2 预览数据窗口 533
第16章 使用SQL Server Web Assistant(Wizard)进行开发 535
16.1 SQL Server Web Assistant简介 535
16.2 启动SQL Server Web Assistant Wizard做一个简单Web查询 535
16.3 使用Web Assistant Wizard调用存储过程 545
第17章 使用ASP集成Web和数据库 549
17.1 ASP简介 549
17.2 ASP基础 551
17.2.1 创建ASP网页 551
17.2.2 使用VBScript作为脚本语言 552
17.2.3 使用变量和常量 552
17.2.4 过程 554
17.2.5 使用集合 554
17.2.6 ASP内建对象 555
17.3 使用ADO对象的ASP 556
17.3.1 连接到SQL Server 2000 557
17.3.2 使用Recordset对象检索数据 559
17.3.3 使用包含连接的Session 562
17.3.4 使用预备SQL和Command对象 565
17.3.5 修改数据 571
17.3.6 执行存储过程 573
17.3.7 错误处理 578
17.4 使用InterDev进行ASP开发 579
第18章 使用XML进行SQL Server 2000数据库开发 582
18.1 XML简介 582
18.1.1 XML的设计目标 583
18.1.2 主要的XML技术简介 583
18.2 使用Virtual Directory Management在IIS中增加XML支持 584
18.3 使用HTTP直接访问SQL Server 586
18.3.1 URL访问语法 587
18.3.2 HTTP查询的特殊字符 587
18.3.3 使用HTTP执行SQL语句查询 589
18.3.4 使用HTTP执行模板文件 593
18.3.5 使用HTTP访问数据库对象 597
18.3.6 使用Post模板的方式检索 598
18.4 使用XDR模式创建XML视图 601
18.4.1 XDR模式注释 601
18.4.2 检索中使用XDR模式注释 603
18.5 使用XPath Query 607
18.5.1 数据类型 607
18.5.2 定位路径 608
18.5.3 使用XPath Query 608