第1章 配置与管理SQL Server 1
1.1 安装SQL Server 2000/2005/2008 2
实例001 安装SQL Server 2000个人版 2
实例002 安装SQL Server 2000企业版 6
实例003 安装SQL Server 2000客户端 9
实例004 安装SQL Server 2005企业版 10
实例005 安装SQL Server 2008企业版 17
实例006 升级SQL Server 28
实例007 卸载SQL Server 29
1.2 配置服务器 30
实例008 创建服务器组 30
实例009 注册服务器 31
实例010 启动、暂停和停止SQL Server 2000 33
实例011 启动SQL Server 2005/2008 35
实例012 配置网络连接 37
实例013 配置链接服务器 38
实例014 配置远程服务器 40
实例015 测试服务器的配置 42
实例016 影响SQL Server运行的设置 44
1.3 配置客户端 45
实例017 客户端Net-Library 45
实例018 配置ODBC数据源 47
实例019 测试客户端的配置 49
1.4 通过Internet访问SQL Server 2000 49
实例020 建立访问SQL Server 2000的虚拟目录 49
实例021 通过HTTP访问SQL Server 2000 52
实例022 通过Microsoft Proxy Server连接SQL Server 2000 54
1.5 管理SQL Server 2000 54
实例023 启动企业管理器 54
实例024 使用查询分析器 55
实例025 使用SQL事件探查器 58
实例026 通过“服务”管理SQL Server 2000 61
实例027 使用SQL Server 2000联机丛书 63
实例028 启动SQL Server Management Studio 64
实例029 使用SQL Server配置管理器 65
实例030 使用Reporting Services配置管理器 66
实例031 应用数据库引擎优化顾问 68
1.6 脚本与批处理 69
实例032 将数据库生成脚本 69
实例033 将指定表生成脚本 71
实例034 执行脚本 72
实例035 批处理 73
1.7 维护SQL Server 2000 74
实例036 复制数据库 74
实例037 分离数据库 77
实例038 附加数据库 78
1.8 导入、导出数据库 79
实例039 导入SQL Server 2000数据库 79
实例040 导入Access数据 81
实例041 导出数据到Access数据库 83
实例042 导出数据到Excel 86
1.9 数据备份与还原 87
实例043 完全备份与还原 87
实例044 差异备份与还原 89
实例045 部分数据库还原 91
实例046 备份和恢复系统数据库 93
1.10 常见问题与解决 94
实例047 连接失败 94
实例048 用户登录失败 96
实例049 解决SQL Server 2000无法安装 97
实例050 解决SQL Server 2000卸载失败 98
实例051 解决安装SQL Server补丁时出现的问题 100
第2章 SQL Server数据库安全性管理 102
2.1 SQL Server的身份验证模式 103
实例052 Windows验证模式 103
实例053 混合验证模式 104
2.2 管理SQL Server登录 104
实例054 查看登录 105
实例055 创建一个登录账号 105
实例056 更改、删除登录账号 107
实例057 禁止登录账号 107
实例058 删除SQL Server登录 108
2.3 服务器角色管理 109
实例059 添加成员 109
实例060 删除成员 111
2.4 数据库角色管理 111
实例061 创建数据库用户账户 111
实例062 为数据库角色添加和删除成员 113
实例063 创建和删除数据库角色 114
2.5 权限管理 115
实例064 为数据库角色设置权限 116
实例065 设置数据库的访问权限 117
实例066 设置对象的访问权限 118
2.6 高级安全主题 119
实例067 数据文件安全 119
实例068 安全配置 121
实例069 使用安全套接字层(SSL)加密 123
实例070 如何防范SQL注入式攻击 128
第3章 使用企业管理器管理数据库 129
3.1 设计数据库 130
实例071 创建数据库 130
实例072 修改数据库 131
实例073 删除数据库 133
3.2 设计数据表 134
实例074 创建数据表 134
实例075 创建计算字段 138
实例076 修改表 139
实例077 删除表 140
3.3 索引的建立与维护 141
实例078 建立唯一索引 141
实例079 定义主键索引 143
实例080 删除索引 144
3.4 关系的建立与维护 145
实例081 建立一对一关系 145
实例082 建立一对多关系 146
实例083 删除关系 147
3.5 维护数据表 148
实例084 在表结构中添加新字段 148
实例085 在表结构中删除字段 149
实例086 修改表结构中字段的顺序 150
实例087 重命名表 151
3.6 浏览数据 152
实例088 查看所有数据 152
实例089 查看某一条记录 153
实例090 浏览指定行数的数据 154
3.7 数据的基本操作 154
实例091 添加数据 154
实例092 修改数据 155
实例093 删除数据 156
第4章 Transact-SQL动态维护SQL Server 158
4.1 设计数据库 159
实例094 创建数据库 159
实例095 修改数据库 161
实例096 删除数据库 164
4.2 维护数据表 165
实例097 创建数据表 165
实例098 定义计算字段 166
实例099 修改表 168
实例100 删除表 169
实例101 修改表和字段的名称 170
4.3 维护数据库 172
实例102 分离数据库 172
实例103 附加数据库 173
实例104 附加单文件数据库 174
4.4 数据库备份与恢复 175
实例105 建立备份设备 175
实例106 删除备份设备 177
实例107 备份数据库 178
实例108 还原数据库 179
第5章 SQL基本查询 181
5.1 SELECT子句检索 182
实例109 查询明日编程词典信息表中特定列数据信息 182
实例110 查询商品编号、价格等多列信息 183
实例111 查询商品销售表中全部列 184
实例112 将学生成绩表中英文列名设置为中文列名 185
实例113 在商品销售表中添加商品利润的新列 186
5.2 区间查询 188
实例114 列出商品利润大于300元的商品名称 188
实例115 列出商品利润小于300元的商品名称 189
实例116 列出商品利润在200元~500元之间的商品名称 190
实例117 查询图书价格在68元~88元之间的图书名称 190
实例118 利用模糊查询进行区间查询 192
5.3 数据前若干名 194
实例119 查询图书库存表中现存数量前5名的图书信息 194
实例120 查询图书库存表中现存数量后5名的图书信息 196
实例121 查询编程词典销售表中销售额前3名的数据 197
5.4 查询结果排序 197
实例122 将职工表中的信息按照奖金升序(或降序)输出 198
实例123 查询员工表中按工资、奖金两次排序后的信息 199
实例124 将在留学生表中查询的结果按国籍降序排序 200
实例125 在学生信息表中按学生的姓氏笔画重新排序 201
实例126 根据工资与奖金之和生成的列对员工信息排序 202
5.5 模式查询 202
实例127 查询数字 202
实例128 利用_通配符查数学成绩在80~89分之间的学生信息 204
实例129 利用%通配符查询学生表中姓李的员工信息 205
实例130 利用[]通配符查英语成绩在95~99分之间学生信息 205
实例131 利用[^]通配符查数学不在90~99分之间的学生信息 207
实例132 复杂的模式查询 207
5.6 除去重复记录或空值 208
实例133 除去图书销售表中相同的图书信息 208
实例134 列出图书销售表中图书重印超过1次的图书 210
实例135 查询学生信息表中备注信息不为空的学生信息 210
实例136 列出学生信息表中备注信息为空的学生信息 211
5.7 在查询中使用OR和AND运算符 212
实例137 利用OR运算符进行区间定位查询 212
实例138 利用AND运算符进行区间定位查询 214
实例139 应用OR、AND执行多个搜索条件查询 215
5.8 格式化字段和结果集 217
实例140 统一字段格式进行查询 217
实例141 将客户信息表中客户姓名字段中的空格去除 218
实例142 对工资数据表中查询出的工资进行四舍五入 219
第6章 字符串/数字/日期时间查询 222
6.1 字符串查询 223
实例143 在职工表中去除编号与姓名字符串中的尾部空格 223
实例144 在学生信息表中截取学生的姓和名的信息 224
实例145 连接图书表中书名与类别生成图书说明信息 225
实例146 在报名表中将“200900”插入原用户报名编号中 226
实例147 获取字符在字符串中出现的次数 227
实例148 将外籍留学生表中的学生姓大写名小写 227
6.2 截取字符串 229
实例149 从字符串中删除元音字符 229
实例150 从字符串中分离字符和数字 229
实例151 去除字符串中非字母和数字的字符 231
6.3 比较字符串 231
实例152 比较留学生信息中学生的姓是否相同 231
实例153 在留学生信息中比较查询留学生的名是否相似 232
实例154 在外籍留学生信息中英文姓名大小写敏感查询 233
6.4 格式化字符串 234
实例155 将电话号码中的“-”去掉,但保留分机号前的“-” 234
实例156 提取电话号码中的区号和号码 235
实例157 格式化字符串为日期格式 236
6.5 数学函数 237
实例158 使用SQRT函数查询公式表中字段A的平方根 238
实例159 使用EXP函数查询数学公式表中e的A次幂 239
实例160 利用三角函数查询公式表中字段A的余弦、正弦和正切值 240
6.6 时间段查询 241
实例161 查询出版日期在10月份的图书名称及出版日期 241
实例162 查询今天是周几 242
实例163 查询学生信息表中学生间入学时间间隔多少天 244
实例164 查询某笔记本的两次进货日期相差的月份数 245
实例165 计算员工全年工作日 246
实例166 查询当前图书出版日期与下一次出版日期的间隔时间 247
6.7 获取日期 249
实例167 将图书出版日期中的年月日以列的形式显示 249
实例168 查询当前日期加3个月以后的日期 250
实例169 分别获取某月份、本周和当前季度的第一天 251
实例170 分别获取上个月、去年和本年的最后一天 253
6.8 格式化日期 254
实例171 把长日期格式数据转化为短日期格式数据 254
实例172 显示为日期格式数据中的小时、分、秒 256
实例173 将日期格式中的“.”转化为“-” 257
第7章 聚合数据查询 259
7.1 聚合函数 260
实例174 利用SUM函数对职员工资进行汇总 260
实例175 利用AVG函数求学生各学科的平均成绩 261
实例176 利用MIN函数求销售额和利润的最低值 263
实例177 利用MAX函数求员工月销售业绩的最高值 265
实例178 利用COUNT函数求日销售额大于某值的商品数 266
7.2 分组统计 268
实例179 统计学生的总成绩并排序 269
实例180 使用COALESCE函数将NULL转换成0后,计算员工的平均工资 271
实例181 使用ALL查询书名和出版社的全部分组 272
实例182 使用ROLLUP按所属类别和等级统计商品的总销售额 273
实例183 使用CUBE生成带有小计和总计的交叉表 275
实例184 使用HAVING子句返回图书分组后汇总销售额大于某值的数据 277
实例185 使用GROUPING SETS组合多个分组结果集 279
实例186 使用OVER子句和SUM函数根据订单编号分区聚合数据 281
实例187 使用COMPUTE返回商品销售表中的明细及汇总数据 282
实例188 使用COMPUTE BY返回部门分组信息及对应汇总数据 284
第8章 子查询 286
8.1 简单子查询 287
实例189 子查询的查询结果作为SELECT子句的列 287
实例190 查询学生成绩大于平均成绩的记录 288
实例191 子查询作为FROM子句的查询依据 289
8.2 多行子查询 290
实例192 查询外语成绩大于某值的学生明细信息(IN) 290
实例193 返回月销售不在同类图书排名前100名的图书信息(NOTIN) 291
实例194 显示一班学生总成绩中大于二班所有学生总成绩的学生信息(ALL) 292
实例195 查询商品三月份销售额大于当月同类平均销售额的商品信息(ANY/SOME) 293
8.3 相关子查询 295
实例196 求出部门内职员工资最高的职员信息(IN) 295
实例197 查询图书销量大于某值的图书信息(EXISTS) 296
实例198 返回商品采购量不小于某值的商品销售信息(NOT EXISTS) 298
实例199 在HAVING子句中使用子查询过滤一组数据 299
8.4 嵌套子查询 300
实例200 查询指定学历的部门经理当月工资情况 301
实例201 返回学科成绩小于指定的多个成绩任意一个的学生信息 302
8.5 子查询更新数据 303
实例202 在UPDATE语句中使用子查询更新数据 303
实例203 在INSERT INTO语句中使用子查询添加数据 304
实例204 在DELETE语句中使用子查询删除数据 305
第9章 联接/组合查询 306
9.1 多表联接 307
实例205 使用CROSS JOIN实现两表的笛卡尔乘积查询 307
实例206 在WHERE子句中设置联接条件 308
9.2 内联接 309
实例207 返回职员指定月份的工资及其所在部门信息 309
实例208 使用INNER JOIN实现自身联接 310
实例209 多表联接的查询 311
9.3 外联接 313
实例210 使用LEFT OUTER JOIN返回以左表为主的所有匹配数据 313
实例211 使用RIGHT OUTER JOIN返回以右表为主的所有匹配数据 314
实例212 使用FULL JOIN返回两表相匹配的所有数据 316
9.4 组合查询 316
实例213 使用UNION组合多个结果集 317
实例214 对组合查询结果进行排序 318
实例215 使用INTERSECT运算符求两个结果集的交集 320
实例216 使用EXCEPT运算符求两个结果集的差集 320
第10章 高级查询 322
10.1 利用CASE语句进行查询 323
实例217 利用CASE语句返回备注信息 323
实例218 利用CASE语句更新列值 324
10.2 交叉表查询 326
实例219 使用CASE语句生成静态交叉表 326
实例220 行列转换 327
实例221 PIVOT交叉表统计商品各月份的销售数量 329
实例222 UNPIVOT反转交叉表 330
实例223 调用存储过程生成动态交叉表 332
10.3 递归查询 333
实例224 CTE递归生成连续数 334
第11章 分布式查询 336
11.1 链接服务器 337
实例225 使用“企业管理器”建立链接 337
实例226 创建、查看、删除链接 339
实例227 建立、查看、删除映射 341
实例228 使用T_SQL设置链接选项 343
实例229 创建关联Access数据库的链接并查询其数据 344
实例230 创建到电子表格的链接 345
11.2 分布式查询 346
实例231 简单的分布式查询 346
实例232 使用OpenDataSource进行分布式查询图书信息 348
实例233 使用OpenQuery函数进行分布式查询客户信息 350
实例234 使用OpenRowSet进行分布式查询客户表中的信息 352
11.3 分布式事务处理 353
实例235 创建分布式事务 353
第12章 更新SQL Server数据 355
12.1 添加数据 356
实例236 使用INSERT语句添加单条数据 356
实例237 使用UNION ALL运算符批量添加数据 357
实例238 使用INSERT语句插入多行数据 358
实例239 创建表并添加数据 359
12.2 修改数据 360
实例240 使用UPDATE语句修改单条数据 360
实例241 批量修改数据 361
实例242 修改指定日期字段内的数据 362
12.3 删除数据 362
实例243 删除单条记录 362
实例244 删除指定字段数据为空的记录 363
实例245 使用OUTPUT子句删除数据并返回结果 364
12.4 使用事务 365
实例246 使用事务维护数据一致性 365
第13章 流程控制与功能性语句 367
13.1 流程控制语句 368
实例247 BEGIN...END控制批处理 368
实例248 通过IF语句给定执行条件 369
实例249 IF EXISTS语句检测数据是否存在 370
实例250 WHILE执行循环语句块 371
实例251 CASE分支判断语句 372
实例252 RETURE无条件返回语句 373
实例253 WAITFOR延期执行语句 374
实例254 GOTO跳转语句 374
实例255 TRY CATCH异常处理语句 375
13.2 功能性语句 376
实例256 PRINT输出语句 376
实例257 RAISERROR返回错误信息 377
实例258 SET选项设置语句 378
第14章 索引 379
14.1 创建索引 380
实例259 创建唯一聚集索引快速定位记录位置 380
实例260 使用Transact-SQL命令创建索引 382
实例261 使用UNIQUE关键字创建唯一索引 384
实例262 使用CLUSTERDE关键字创建簇索引 385
实例263 索引的销毁 386
实例264 创建多字段非聚集索引检索数据 387
实例265 使用索引视图查询数据 388
14.2 维护索引 390
实例266 修改索引 390
实例267 重建索引 391
实例268 删除索引 392
14.3 全文索引 393
实例269 启用全文检索服务 393
实例270 定义全文索引 394
实例271 使用Transact-SQL创建全文索引 397
实例272 使用Transact-SQL维护全文索引 401
实例273 检索词或短语 402
实例274 模糊查询 403
实例275 对格式化的二进制数据进行全文检索 404
第15章 视图 406
15.1 创建和使用视图 407
实例276 使用企业管理器创建视图 407
实例277 使用CREATEVIEW创建视图显示客户信息 408
实例278 使用创建视图向导创建视图 410
实例279 使用视图简化复杂的连接 411
实例280 创建基于视图的视图 412
实例281 使用视图生成计算列 414
实例282 使用视图重新格式化检索出的数据 415
实例283 使用视图添加表数据 416
实例284 通过视图修改表数据 417
实例285 通过视图删除表数据 418
实例286 使用视图过滤不想要的数据 419
15.2 管理视图 420
实例287 使用sp_helptext获取视图信息 421
实例288 如何修改视图 422
实例289 如何删除视图 423
15.3 使用视图加强数据安全 424
实例290 对视图定义文本进行加密 424
实例291 通过视图对不同用户设置权限 425
第16章 存储过程 427
16.1 创建和使用存储过程 428
实例292 使用Transact-SQL语句创建存储过程并执行 428
实例293 在存储过程中使用RETURN语句返回值 430
实例294 使用带参数的存储过程以实现动态检索 431
实例295 执行带回传参数的存储过程 432
实例296 在存储过程中使用事务 434
实例297 创建并添加扩展存储过程 435
实例298 创建加密存储过程 436
16.2 管理存储过程 437
实例299 查看存储过程相关信息 437
实例300 修改存储过程 439
实例301 删除存储过程 440
实例302 存储过程的重新编译 441
实例303 重命名存储过程 443
16.3 应用存储过程 444
实例304 使用存储过程调用Com组件(sp_OACreate) 444
实例305 监控存储过程 445
实例306 自动执行存储过程 447
实例307 执行远程存储过程 448
第17章 触发器 451
17.1 创建触发器 452
实例308 使用企业管理器创建触发器 452
实例309 使用INSERT触发器向员工表中添加新员工信息 453
实例310 使用UPDATE触发器更新员工表中员工基本工资 455
实例311 应用DELETE触发器删除离职员工工资信息 456
实例312 创建具有触发条件的触发器 458
实例313 创建INSTEAD OF触发器 459
实例314 创建递归触发器,实现只允许一次删除一条记录 460
17.2 管理触发器 462
实例315 触发器的嵌套 462
实例316 Rollback触发器 464
实例317 查看触发器数据 465
实例318 修改触发器 467
实例319 删除触发器 469
实例320 重命名触发器 470
17.3 触发器的应用 471
实例321 应用触发器向员工表添加数据并初始化工资表 471
实例322 应用触发器修改员工信息表中离职员工信息 473
实例323 应用触发器删除相关联的两表间的数据 474
第18章 游标的使用 476
18.1 游标的基本操作 477
实例324 声明游标并分别创建一个标准、只读和更新游标 477
实例325 打开游标并检索图书信息表中指定条件的数据 479
实例326 读取游标中存储的前两条职工表中的员工记录 480
实例327 关闭释放游标 482
实例328 利用sp_cursor_list查看服务及游标属性 483
实例329 利用sp_describe_cursor查看游标的全局特性 484
18.2 游标的高级操作 486
实例330 利用游标在商品销售表中返回指定商品行数据 486
实例331 用ORDER BY子句改变游标中行的顺序 488
实例332 使用FETCH将值存入变量 490
实例333 利用游标设计带滚动的商品销售数据查询 491
实例334 应用游标的嵌套查询两个员工表间的员工信息 493
18.3 通过游标维护数据 494
实例335 使用游标根据商品单价和销售量计算出销售额 494
实例336 基于游标定位修改员工信息表中员工的姓名 496
实例337 只允许用户更新游标中指定列中的值 497
实例338 使用游标定位删除员工表中指定条件的员工 498
实例339 用索引改变游标中员工编号的行顺序 500
实例340 应用参数化游标更改员工部门信息 501
第19章 SQL Server高级应用 503
19.1 XML与SQL Server 504
实例341 利用FOR XML RAW参数读取图书表中的所有图书信息 504
实例342 应用FOR XMLAUTO参数将图书表中的数据作为嵌套输出 506
实例343 读取图书销售表中字段将其作为节点元素输出 507
实例344 将存储在XML中的图书信息插入数据表中 509
实例345 创建、修改和删除XML索引 510
实例346 查询存储图书信息的XML节点(query方法) 512
实例347 获取XML节点或元素值(value方法) 513
实例348 编辑存储图书信息的XML节点(modify方法) 514
实例349 将XML节点转变为对应字段(nodes方法) 518
19.2 监视与优化 519
实例350 使用“事件查看器”监视事件日志中记录的事件 519
实例351 使用SQL Server Management Studio的查询编辑器 520
实例352 使用SQL Server Profiler监视数据库引擎等性能 521
实例353 使用“数据库引擎优化顾问”优化 524
实例354 使用dta实用工具优化数据库工作负荷 527
19.3 编程与服务 529
实例355 创建SQL Server 2005对象 529
实例356 使用SMO管理对象模型开发数据库 534
实例357 创建报表连接到数据源并进行布局设计 538
实例358 使用Management Studio管理报表 543
实例359 创建分析服务项目并在项目中定义数据源 549
实例360 创建目标邮件方案挖掘对邮件信息逻辑分组 554
实例361 在服务器之间复制数据以提高伸缩性和可用性 561
实例362 将Microsoft Excel 2007中的数据导入SQL Serve 565
实例363 在Excel 2007中引用SQL Server数据生成报表 568
第20章 Visual Basic与SQL Server 571
20.1 连接数据库 572
实例364 ADO连接数据库 572
实例365 DAO连接数据库 572
实例366 RDO连接数据库 573
实例367 ODBC连接数据库 574
20.2 浏览数据库 576
实例368 使用文本框浏览数据库 576
实例369 使用表格单页浏览数据库 578
实例370 使用表格多页浏览数据库 579
20.3 数据查询 580
实例371 通用查询 581
实例372 模糊查询 581
实例373 逻辑查询 583
实例374 空数据查询 584
实例375 时间段查询 585
实例376 多表查询 586
20.4 编辑数据表 587
实例377 录入数据 587
实例378 批量修改数据 589
实例379 批量删除数据 591
20.5 存储过程、视图和触发器 592
实例380 视图的应用 592
实例381 触发器的应用 593
实例382 存储过程的应用 594
20.6 备份、恢复数据 596
实例383 附加数据库 596
实例384 备份数据库 597
实例385 恢复数据库 598
20.7 使用代码维护数据库 599
实例386 新建数据库和数据表 600
实例387 提取数据表结构 602
实例388 修改数据表结构 604
实例389 删除无用的数据表 605
第21章 Delphi与SQL Server 607
21.1 连接数据库 608
实例390 使用ADO连接SQL Server 2000数据库 608
实例391 如何使用ODBC连接SQL Server数据库 609
21.2 浏览数据库 612
实例392 通过文本框浏览数据库 612
实例393 通过DBGrid表格浏览数据 614
21.3 数据查询 615
实例394 通用查询 615
实例395 模糊查询 616
实例396 逻辑查询 618
实例397 空数据查询 619
实例398 时间段查询 620
实例399 多表查询 622
21.4 编辑数据表 623
实例400 录入数据 623
实例401 批量修改数据 625
实例402 批量删除数据 627
21.5 存储过程、视图和触发器 629
实例403 存储过程的应用 629
实例404 视图的应用 631
实例405 触发器的应用 633
21.6 备份、恢复数据 635
实例406 附加数据库 635
实例407 备份数据库 636
实例408 恢复数据库 638
21.7 使用代码维护数据库 640
实例409 新建数据库和数据表 640
实例410 修改数据表结构 644
实例411 删除无用数据表 646
第22章 ASP与SQL Server 648
22.1 连接数据库 649
实例412 通过ADO连接数据库 649
实例413 通过ODBC连接数据库 655
实例414 通过OLE DB连接数据库 658
22.2 浏览数据库 659
实例415 利用文本框浏览数据 659
实例416 表格单页数据显示 661
实例417 表格分页数据显示 663
22.3 数据查询 665
实例418 通用查询 666
实例419 模糊查询数据 669
实例420 数据排行 671
实例421 多表分组统计 673
实例422 数据汇总 675
实例423 多表查询 676
22.4 编辑数据库 677
实例424 录入数据 677
实例425 批量修改数据 679
实例426 批量删除数据 680
22.5 存储过程、视图、触发器 681
实例427 存储过程的应用 682
实例428 视图的应用 683
实例429 触发器的应用 684
22.6 备份、恢复数据 686
实例430 附加数据库 686
实例431 备份数据库 687
实例432 恢复数据库 690
22.7 使用代码维护数据库 694
实例433 新建数据库和表 694
实例434 修改数据表结构 696
实例435 删除无用的数据表 700
第23章 ASP.NET与SQL Server 702
23.1 连接数据库 703
实例436 SQL Server数据库连接 703
实例437 ODBC连接SQL数据库 705
实例438 Access数据库连接 706
实例439 Oracle数据库连接 708
23.2 浏览数据库 709
实例440 利用GridView显示数据表中的数据 709
实例441 利用GridView分页浏览数据 711
23.3 数据查询 712
实例442 通用查询 712
实例443 模糊查询 714
实例444 数据排行 715
实例445 分组统计 716
实例446 数据汇总 717
实例447 多表查询 718
23.4 编辑数据库 719
实例448 批量录入数据 719
实例449 利用GridView编辑数据 721
实例450 利用GridView删除数据 723
23.5 存储过程、视图、触发器 724
实例451 存储过程的应用 724
实例452 视图的应用 725
实例453 触发器的应用 726
23.6 备份、恢复数据库 727
实例454 附加数据库 728
实例455 备份数据库 729
实例456 恢复数据库 730
23.7 使用代码维护数据库 731
实例457 新建数据库和表 731
实例458 修改数据库结构 733
实例459 删除无用数据表 734
第24章 JSP与SQL Server 736
24.1 连接数据库 737
实例460 JDBC 737
实例461 JDBC-ODBC桥 740
实例462 连接池技术 742
24.2 数据查询 744
实例463 条件查询 744
实例464 模糊查询 746
实例465 数据排序 747
实例466 分组统计 748
实例467 数据汇总 750
实例468 子查询 751
24.3 浏览数据库 753
实例469 文本框浏览 753
实例470 表格单页浏览 754
实例471 表格多页浏览 755
24.4 更新数据库 758
实例472 录入数据 758
实例473 修改数据 760
实例474 删除数据 761
实例475 批量插入数据 762
24.5 存储过程、视图和触发器 764
实例476 存储过程的应用 764
实例477 视图的应用 766
实例478 触发器的应用 768
24.6 备份和恢复数据库 771
实例479 附加数据库在JSP页面中的实现 771
实例480 备份数据库在JSP页面中的实现 773
实例481 恢复数据库在JSP页面中的实现 774
24.7 数据库安全 776
实例482 用户登录 776
实例483 防范SQL注入 777
实例484 利用事务保证数据一致性和安全性 779
技术要点对应实例位置 783