第1章 数据库基础 1
1.1 基本概念和发展 2
1.1.1 数据处理 2
1.1.2 数据模型 4
1.2 数据库系统结构 5
1.2.1 三级模式结构 6
1.2.2 关系数据库的模式和子模式 7
1.3 关系数据库结构 8
1.3.1 基于文件的系统 8
1.3.2 客户/服务器结构 9
1.4 数据库应用程序开发 11
1.4.1 数据库应用程序的构成 11
1.4.2 数据库应用程序的开发步骤 11
1.4.3 本地数据库和远程数据库 13
1.5.1 概念设计 14
1.5 数据库设计 14
1.5.2 逻辑设计 18
1.5.3 物理设计 26
1.5.4 设计和实现的数据完整性 26
1.6 当前流行的关系数据库系统简介 26
1.6.1 常见的桌面数据库产品 27
1.6.2 常见的大型关系数据库产品 28
1.7 本章小结 29
第2章 SQL Server综述 30
2.1 SQL Server的特点 31
2.2 SQL Server 2000的新特性 35
2.3 SQL Server2000的工具 37
2.4 本章小结 38
第3章 结构化查询语言 40
3.1 SQL简介 41
3.2 查询分析器 42
3.3.1 使用SELECT语句选择列 43
3.3 SELECT查询语句 43
3.3.2 使用WHERE子句选择行 52
3.3.3 生成总结数据 58
3.3.4 连接查询 61
3.3.5 子查询 66
3.3.6 使用检索结果创建新表 70
3.3.7 合并结果集 70
3.4 编辑数据 72
3.4.1 INSERT插入数据 72
3.4.2 修改数据 73
3.4.3 删除数据 74
3.5 SQL语句调节 75
3.5.1 数据库调节和SQL调节 75
3.5.2 格式化SQL语句 76
3.5.3 提高查询性能的因素 76
3.6 本章小结 78
第4章 实现和使用数据库 79
4.1 创建和使用数据库 80
4.1.1 用Enterprise Manager创建数据库 80
4.1.2 用CREATE DATABASE语句创建数据库 82
4.1.3 浏览数据库 83
4.1.4 删除数据库 84
4.2 数据类型 84
4.2.1 整数数据类型 85
4.2.2 浮点数据类型 85
4.2.3 字符数据类型 87
4.2.4 二进制数据类型 87
4.2.5 逻辑数据类型bit 88
4.2.6 文本和图形数据类型 88
4.2.7 日期和时间数据类型 89
4.2.9 特定数据类型 90
4.2.8 货币数据类型 90
4.2.10 用户自定义数据类型sysname 91
4.2.11 新数据类型 91
4.3 创建和使用表 92
4.3.1 创建数据库表 92
4.3.2 修改表和查看表 94
4.3.3 删除表 95
4.3.4 创建表的标识 96
4.3.5 表的约束 96
4.3.6 生成表的SQL脚本 100
4.4 创建和使用索引 102
4.4.1 创建索引 102
4.4.2 查看修改索引 105
4.5 使用视图 105
4.5.1 创建视图 106
4.5.2 查看修改视图 110
4.5.3 删除视图和索引视图 111
4.6 数据完整性 112
4.6.1 类型 112
4.6.2 规则 113
4.6.3 默认值 115
4.6.4 存储过程 117
4.6.5 触发器 123
4.7 创建和使用游标 127
4.7.1 游标概述 127
4.7.2 前端游标和后端游标 128
4.7.3 使用SQLServer游标 129
4.7.4 定位、更新和删除游标数据 134
4.8 自定义函数 135
4.8.1 创建和使用自定义函数 135
4.8.2 查看、修改和删除用户自定义函数 139
4.9 创建示例数据库表 140
4.10 本章小结 142
第5章 管理数据库 143
5.1 用户安全性管理 144
5.1.1 数据库登录管理 144
5.1.2 数据库用户管理 147
5.1.3 数据库权限管理 149
5.1.4 数据库角色管理 151
5.2 备份和恢复 152
5.2.1 备份 152
5.2.2 恢复 155
5.2.3 备份恢复系统数据库 156
5.3 优化性能 157
5.3.1 优化表 158
5.3.2 优化索引 159
5.3.3 优化查询 162
5.3.4 分析锁 164
5.4 本章小结 165
第6章 Visual Basic.NET概述 167
6.1 Visual Basic.NET新特点 168
6.2 Visual Basic.NET开发环境 170
6.2.1 Visual Studio.NET起始页 170
6.2.2 共享集成开发环境(IDE) 170
6.3 Visual Basic数据访问技术 175
6.3.1 .NET数据提供者 178
6.3.2 ADO.NET 180
6.3.3 数据访问模型的选择 182
6.4 本章小结 184
第7章 可视化数据库工具 185
7.1 服务器资源管理器 186
7.2 查询生成器 189
7.3 数据库设计器 191
7.4 本章小结 194
第8章 快速创建数据访问窗体 195
8.1 使用数据窗体向导创建数据绑定控件 196
8.1.1 新建项目 196
8.1.2 创建和配置DataAdapter 198
8.1.3 创建DataSet 201
8.1.4 填充数据到DataSet 203
8.1.5 创建数据绑定窗体 204
8.1.6 运行程序 208
8.2 创建主/从访问窗体 209
8.2.1 创建步骤 210
8.2.2 运行程序 212
8.3 本章小结 213
第9章 ADO对象模型及使用 214
9.1 ADO对象模型 215
9.2 引用ADO对象 216
9.3 Connection对象连接数据源 217
9.3.1 对象声明 217
9.3.2 连接数据源 219
9.3.3 事件应用 223
9.4 Recordset对象处理数据 224
9.4.1 创建Recordset对象 225
9.4.2 打开Recordset对象 226
9.4.3 关闭Recordset对象 230
9.4.4 控制当前数据记录 230
9.4.5 读取Recordset中的数据 232
9.4.6 数据编辑 233
9.4.7 数据处理 237
9.4.8 Field对象处理单个字段数据 243
9.5.1 创建Command对象 244
9.5 Command对象执行查询 244
9.5.2 执行Command对象 246
9.5.3 Parameter对象 248
9.6 Property对象设置属性 250
9.7 使用ADO的高级技术 250
9.7.1 多个Recordset 250
9.7.2 分层结构Recordset 251
9.7.3 存储过程的调用 257
9.8 本章小结 260
第10章 ADO.NET对象模型 261
10.1 ADO.NET对象模型 262
10.1.1 ADO.NET结构 262
10.1.2 命名空间 263
10.2 Connection对象连接数据源 264
10.2.2 创建Connection对象 265
10.2.1 引入命名空间 265
10.2.3 Connection事件应用 267
10.3 Command对象执行查询 269
10.3.1 创建Command对象 270
10.3.2 执行Command对象 271
10.3.3 Parameter对象进行参数设置 272
10.3.4 调用存储过程 275
10.4 DataReader对象浏览数据 277
10.4.2 读取数据 278
10.4.1 创建DataReader对象 278
10.5 DataAdapter对象填充数据 281
10.5.1 创建设置DataAdapter对象 281
10.5.2 使用DataAdapter填充数据 285
10.5.3 为DataAdapter对象配置参数 287
10.5.4 更新数据源 289
10.5.5 数据表映射 297
10.6 DataSet对象 300
10.6.1 DateSet对象与Recordset对象 301
10.6.2 DataTable对象操作数据表 303
10.6.3 DataColumn对象操作列 308
10.6.4 DataRow对象操作行 310
10.6.5 DataRelation对象 318
10.6.6 ExtendedProperties属性获得定制信息 327
10.7 视图的创建及使用 327
10.7.1 DataView 327
10.7.2 DataRowView 332
10.8 类型化DataSet 334
10.9 读入XML文本 339
10.10 本章小结 340
第11章 数据绑定 342
11.1 数据绑定功能 343
11.2 单一绑定和复合绑定 345
11.2.1 TextBox控件的单一绑定 346
11.2.2 其他控件的复合绑定功能 347
11.2.3 DataGrid控件绑定主/从结构表 350
11.3 数据定位 353
11.4 在Windows窗体中使用参数化查询显示数据实例 354
11.4.1 窗体规划 354
11.4.2 添加代码 355
11.5 本章小结 358
第12章 错误异常处理编码 360
12.1 Visual Basic错误及处理 361
12.2 非结构化的异常处理 364
12.2.1 On Error Resume Next 364
12.2.2 On Error Goto Line 365
12.2.3 恢复程序运行 366
12.3 结构化的异常处理 369
12.3.1 Try...Catch...Finally语句结构 369
12.4 预防错误编码建议 371
12.3.2 编写一个结构化的错误异常处理代码 371
12.4.1 预防编码错误 372
12.4.2 预防用户错误 378
12.5 本章小结 380
第13章 打印报表 381
13.1 使用Crystal Reports创建报表 382
13.1.1 使用报表专家创建报表 384
13.1.2 报表设计器界面 392
13.1.3 创建自定义报表 393
13.2 使用CrystalReportViewer显示数据报表 398
13.2.1 连接显示报表文件 398
13.2.2 浏览报表 400
13.3 修改报表 403
13.3.1 报表对象 403
13.3.2 修改报表 403
13.4 本章小结 406
第14章 应用程序示例 407
14.1 创建MDI窗体 408
14.1.1 MDI窗体的特点 408
14.1.2 创建MDI主窗体和子窗体 409
14.1.3 窗体界面 409
14.1.4 在MDI主窗体中创建并显示子窗体 413
14.2 程序代码设计 415
14.2.1 标准模块设计 415
14.2.2 MDI主窗体代码 420
14.2.3 雇员记录录入代码 420
14.2.4 订单查询窗体代码 427
14.2.5 【工资报表】窗体代码 429
14.3 程序运行结果 432
14.4 完整程序代码 435
14.5 本章小结 452