目录 1
第1章 SQL Server安装与选项设置 1
1 在Windows XP操作系统中是否可以运行SQL Server 2000企业版 2
2 如何安装微软免费提供的SQL Server2000桌面引擎 2
3 在安装SQL Server时如何通过设置来提高安全性 3
4 如何执行无值守安装 5
5 如何在一台计算机上安装多个SQL Server实例 6
6 如何从较低版本升级到SQL Server 2000 8
7 如何解决安装SQL Server补丁时出现的问题 10
8 如何解决SQL Server无法卸载的问题 11
第2章 数据库配置和选项管理 13
9 常见的SQL Server连接失败错误及解决方法 14
10 如何将远程的SQL Server服务器注册到本地进行管理 17
11 如何使用服务器和客户端网络实用工具 20
12 如何配置SQL邮件服务实现电子邮件的发送和接收 23
13 如何进行数据库服务器连接选项配置 25
14 如何将系统数据库和系统对象设置为隐藏 26
15 如何创建、启动、调度、修改和查看作业 27
16 如何解决由于登录失败而无法启动服务(1069错误)的问题 30
17 安装完成后如何设置适合中文习惯的SQL排序规则 31
18 SQL Server中死锁产生的原因及避免的办法 32
19 如何设置才能使查询分析器可以单步调试 33
第3章 SQL Server的安全管理 35
20 SQL Server安全系统的构架是怎样的 36
21 Windows身份验证和混合模式身份验证有什么区别 36
22 如何设置Windows身份验证模式的安全性 37
23 创建安全账户要遵循什么样的规则 39
24 固定服务器角色、固定数据库角色和public角色有什么区别 39
25 如何进行授予、拒绝、废除权限的管理 41
26 解决权限冲突要遵循什么原则 42
27 如何使用事件探查器和审核日志审核SQL Server的活动 43
28 如何进行数据库角色管理 44
29 如何授权其他用户进行对象权限的授予 46
30 如何授予用户在对象中的权限 47
31 如何通过加密来提高SQL Server的安全性 48
32 如何使用视图和存储过程作为安全机制 49
33 如何通过设置Proxy Server实现互联网上数据库的安全复制 50
34 如何通过HTTP访问SQL Server 51
35 如何防范SQL注入式攻击 53
36 不能作为系统管理员登录SQL Server时怎么办 54
37 如何在Linux下访问SQL Server数据库 54
第4章 优化服务器性能 57
38 数据库性能优化涉及哪些方面 58
39 SQL Server产生瓶颈的主要原因有哪些 63
40 如何使用联合数据库服务器分摊处理负荷 65
41 如何使用独立磁盘冗余阵列(RAID) 67
42 如何使用索引优化向导优化索引 68
43 如何收缩事务日志 70
44 如何优化高级查询 73
45 事务、批处理和存储过程对性能有何影响 75
46 如何避免阻塞 76
47 如何优化备份和还原性能 79
48 如何通过内存配置选项优化服务器性能 82
49 如何通过I/O配置选项优化服务器性能 84
50 如何对SQL Server的性能进行评估 86
51 如何使用事件探查器监视实例中的事件 87
52 如何优化tempdb数据库性能 88
53 如何监视错误日志 89
54 如何用Transact-SQL语句监视服务器性能和活动的信息 91
第5章 数据库设计和创建 95
55 制定数据库创建计划有哪些步骤 96
56 如何根据已有的范式设计出良好的数据库 97
57 设计数据库时,如何保证数据完整性 98
58 设计时如何估计数据库的大小(表和索引) 100
59 使用数据库设计器时有哪些注意事项 102
60 如何进行分布式环境的数据库和表设计 102
61 如何利用创建数据库向导创建数据库 103
62 如何附加数据库 104
63 如何处理SQL脚本生成时的问题 106
第6章 表 109
64 如何开启和关闭text in row选项 110
65 如何创建和删除用户自定义的数据类型 111
66 如何使用自动编号和标识符列 112
67 如何设置空值和DEFAULT值 113
68 如何创建和使用临时表 115
69 DELETE、TRUNCATE和DROP TABLE有什么区别 116
70 如何实现交叉表 117
71 SQL Server中各个系统表的作用是什么 118
72 删除表的记录以后,如何使新记录的编号仍然从1开始 119
第7章 索引和视图 121
73 创建索引对查询有何作用 122
74 如何创建聚集索引和非聚集索引 123
75 最大的索引键值能否超过900Byte 125
76 如何创建升序和降序索引 127
77 如何创建性一索引 128
78 如何在计算列上创建索引 129
79 如何创建有关值在列中分布情况的统计信息 131
80 如何在企业管理器中管理索引 134
81 如何删除和重建索引 135
82 如何获取远程表的索引信息 137
83 如何合理地设定填充因了 138
84 使用视图的作用是什么 139
85 如何创建索引视图 141
86 如何修改和重命名视图 144
87 如何创建分区视图 146
88 如何通过视图修改数据 149
89 如何获取关于视图的信息 151
第8章 存储过程 153
90 存储过程和批处理文件、函数有何不同 154
91 设计存储过程应当遵循哪些原则 156
92 如何创建存储过程 157
93 如何为存储过程指定参数 164
94 如何从存储过程中返回数据 166
95 如何执行存储过程 169
96 如何自动执行存储过程 171
97 如何修改和重命名存储过程 172
98 如何进行存储过程的嵌套调用 174
99 如何使用HTTP执行存储过程 175
100 如何使用sp_executesql执行字符串 177
101 如何添加扩展存储过程 180
102 如何创建OLE自动化对象 181
103 如何使用SQL邮件存储过程 184
104 如何执行发布存储过程 187
105 如何通过OpenXML提供行集视图 189
第9章 触发器 193
107 如何指定触发器何时激发 194
106 如何使用触发器强制执行业务规则 194
108 如何用空值和默认值测试触发器是否被激活 195
109 INSTEAD OF触发器和AFTER触发器有什么区别 196
110 如何在视图上定义INSTEAD OF INSERT触发器向表中插入数据 197
111 如何用触发器在表中存储某列的运行总计 198
112 如何在触发器中用ROLLBACK TRANSACTION进行回滚 200
113 如何在INSTEAD OF触发器中使用inserted和deleted表 200
114 如何使用嵌套和递归触发器 201
115 如何查看、修改、删除触发器 202
第10章 事务 205
116 什么是事务,事务有何特性 206
117 如何创建和回滚到事务保存点 206
118 如何编写有效的事务 207
119 什么是分布式事务,如何启动分布式事务 208
120 事务并发处理会产生哪些问题 209
121 如何启动隐性事务模式 210
122 如何进行事务复制 211
123 如何备份事务日志和使用事务日志恢复数据库 212
第11章 游标 215
124 什么是游标,什么是默认结果集 216
125 静态游标和动态游标的区别有哪些 216
126 服务器游标与客户端游标相比有哪些优点 217
127 如何使用cursor数据类型的变量 218
128 如何设置服务器游标的并发选项 219
129 如何打开游标并提取所有行 221
131 如何将游标持续到引用它们的变量将其释放 222
130 如何获得FAST_FORWARD游标格式 222
132 如何在游标中执行定位更新 223
133 如何调用@@CURSOR_ROWS进行异步填充 224
134 如何用@@FETCH_STATUS控制在一个WHILE循环中的游标活动 225
第12章 分布式查询 227
135 如何在SQL Server中访问异类数据源 228
136 如何使用链接服务器名称标识数据源 229
137 如何用特殊名称标识数据源 230
138 如何将查询结果直接作为表使用 232
139 使用Transact-SQL访问外部数据源时有哪些规则 232
140 如何使用OPENDATASOURCE、OPENROWSET和OPENQUERY 233
141 如何启动分布式事务 236
142 从OLE DB提供程序到SQL Server的数据类型映射是怎样的 238
143 如何优化分布式查询 241
144 如何访问Access、Excel和格式化文本文件 243
145 如何访问Oracle和DB2数据库 244
146 如何对包数据发出分布式查询 246
第13章 全文索引和全文检索 249
147 在SQL Server中全文查询是如何实现的 250
148 SQL Server的全文检索服务有什么作用 252
149 全文索引与普通SQL索引有什么区别 254
150 如何实现用户的全文查询 255
151 如何对全文目录进行调查和清除 259
152 如何使用CONTAINS谓词在数据库中检索 261
153 如何使用FREETEXT谓词在数据库中检索 266
154 如何将全文谓词与其他Transact-SQL谓词结合起来进行查询 267
155 如何使用CONTAINRTABLE和FREET-EXTTABLE为行集函数赋值 268
156 如何进行文件数据的全文检索 273
157 对大型表进行全文检索时有哪些注意事项 275
第14章 Transact-SQL语言基础 277
158 常见的标识符有哪些 278
159 Transact-SQL中有哪些数据类型 279
160 如何在SQL Server中存取图片、Word文件等大对象 282
161 如何进行数据类型转换 283
162 Transact--SQL中有哪些系统函数 284
163 Transact--SQL中有哪些常用数学函数 285
164 Transact--SQL中有哪些常用日期函数 286
165 Transact--SQL中有哪些常用字符串函数 287
166 如何调用用户定义函数 288
167 Transact--SQL中有哪些运算符 289
168 如何使用保留关键字 291
169 如何使用CASE条件语句 292
170 如何使用WAITFOR语句指定时间间隔 294
172 如何使用ORDER BY子句对行进行排序 295
171 如何使用表别名来提高SQL语句的可读性 295
173 如何使用DISTINCT关键字消除重复项 296
174 如何使用TOP和PERCENT限制结果集大小 298
175 如何用WHERE和HAVING进行行筛选 299
176 在SQL语句中如何指定搜索条件 299
177 如何进行表的联接操作 301
178 如何使用GROUP BY子句和ALL关键字 302
179 如何使用UNION运算符合并多个结果 303
180 如何使用子查询 305
181 如何使用ANY、SOME、ALL修改的运算符进行查询 307
182 如何使用EXISTS和NOT EXISTS进行查询 308
183 如何进行多层嵌套的子查询 309
184 如何使用CUBE、ROLLUP、COMPUTE和COMPUTEBY汇总数据 310
185 如何在SQL Sewer中用@@ERROR、PRINT和RAISERROR进行错误处理 313
186 如何编写可读性强的代码 315
187 在SQL Server 2000中如何管理ntext、text或image数据 316
188 如何用SELECT…INTO语句导出表 317
190 如何处理单引号 318
189 SQL语句中的一些特殊参数如何用变量来代替 318
191 如何解决字符串不能超过8000个字符的问题 319
192 如何将小写金额转换成大写的 321
193 如何随机选取n条记录或者对记录随机排序 323
194 TOPN和SET ROWCOUNT N哪个更快 324
195 如何删除数据库某个表中的重复数据 324
196 如何实现两个SQL Server之间的数据同步更新 325
197 如何用SQL语句生成SQL Server数据字典 329
198 如何获得数据库中所有用户表的名称 329
第15章 数据导入和导出 331
199 导入和导出数据要做哪些准备 332
200 什么是数据转换服务 335
201 如何使用DTS导入/导出向导复制数据 337
202 如何创建DTS包 339
203 如何使用数据转换服务(DTS)设计器复制数据库表 342
204 如何执行数据驱动的查询任务 345
205 如何执行大容量插入任务 352
206 如何使用bcp和BULK INSERT 353
207 如何优化大容量复制性能 358
208 如何在DTS中使用ActiveX脚本 363
209 如何在DTS包中使用全局变量 370
210 如何使用查找查询 372
211 如何从外部数据源查询DTS包 375
第16章 备份和还原数据库 379
212 如何制定数据库备份和还原策略 380
213 如何使用备份设备 383
214 如何进行完整的数据库备份和还原 385
215 如何进行差异数据库备份和还原 388
216 如何进行事务日志备份和还原 391
217 如何进行文件备份和还原 394
218 如何备份和还原master数据库 397
219 如何执行部分数据库还原操作 400
220 如何将数据库还原到某个即时点 402
221 如何附加和分离数据库 403
222 只有数据文件(mdf)时如何恢复数据库 406
223 如何检查数据库的逻辑和物理一致性 407
224 如何重新开始被中断的备份和还原操作 410
第17章 在Visual Basic环境中访问SQL Server 413
225 SQL Server为Visual Basic开发者提供哪些接口 414
226 常见的Visual Basic连接SQL Server的连接串有哪些 415
227 如何使用ADO访问数据库 417
228 如何在Visual Basic中直接用ODBC API访问数据库 418
229 从SQL Server到Visual Basic的数据类型转换需要注意哪些问题 421
230 如何在Visual Basic中进行表的创建和删除 421
232 如何在Visual Basic中执行事务 423
231 如何在Visual Basic中调用存储过程及其功能 423
233 如何将数据绑定到DataList和DataGrid上 424
234 如何使用Visual Basic调用SQL Server数据转换服务(DTS) 426
235 在Visual Basic中如何列举出网络上所有的SQL Server服务器 427
236 如何判断数据库中是否已经存在某一个表 428
237 如何在打开表单时获得表单所有的字段数目 429
238 如何在Visual Basic中进行数据库的备份 430
第18章 在Visual C/C++环境中访问SQL Server 433
239 Visual C/C++中有哪些SQL Server的编程接口 434
240 如何使用DAO访问SQL Server 437
241 如何在Visual C/C++中使用ODBC API访问SQL Server数据库 441
242 如何在Visual C/C++中使用ADO访问SQL Server数据库 446
243 如何在Visual C/C++中使用OLE DB访问SQL Server数据库 449
244 C++和SQL数据类型是如何映射的 452
245 如何在Visual C/C++中调用存储过程 453
246 如何在存储过程中调用外部的动态连接库 457
247 如何批量获取记录(ODBC) 460
248 如何在记录集中执行事务(ODBC) 462
249 如何进行数据库异常处理 463
250 如何通过ADO实现二进制大对象的存取 465
第19章 在ASP和ASP.NET环境中访问SQL Server 469
251 在ASP中如何用ADO连接SQL Server数据库 470
252 在ASP中如何通过DSN连接SQL Server数据库 472
253 如何在ASP中插入、更新和删除数据 473
254 如何在ASP中使用Filter与UpdateBatch实现数据过滤和批量更新 477
255 如何在ASP中调用存储过程 479
256 如何利用存储过程实现ASP用户身份验证 481
257 如何在ASP中处理事务 483
258 如何在ASP中分页显示查洵结果 485
259 ADO.NET和ADO有什么不同 487
260 如何在ASP.NET中连接SQL Server 493
261 如何用DataReader从数据库读取数据 496
262 如何创建和使用DataSet 498
263 如何在ASP.NET中调用存储过程 508
264 如何在ASP.NET中执行事务 515