第1篇 基础篇 1
第1章 关系数据库简介 2
1.1 数据库基本概念 2
1.2 关系模型 3
1.3 使用ER模型设计数据库 4
1.4 关系数据库的范式 8
1.5 小结 9
2.1.1 ComboBox控件简介 10
2.1 常用控件介绍与使用 10
第2章 Visual Basic.NET数据库基础 10
2.1.2 ComboBox控件实际应用 11
2.1.3 DataGrid控件简介 12
2.1.4 DataGrid控件实际应用 13
2.1.5 ListBox控件简介 14
2.1.6 ListBox控件实际应用 15
2.1.7 TreeView控件简介 16
2.1.8 TreeView控件实际应用 17
2.2.1 通过IDE连接数据库 19
2.2 数据库IDE环境 19
2.2.2 使用IDE操作数据库 23
2.2.3 几个常用的数据库组件 27
2.3 小结 33
第3章 结构化查询语言SQL 34
3.1 SQL基础 34
3.1.1 SQL语言的特点 34
3.1.2 SQL语言的基本概念 35
3.3 数据查询 36
3.2 数据定义 36
3.3.1 简单查询 37
3.3.2 连接查询 49
3.3.3 嵌套查询 52
3.4 数据更新 56
3.4.1 数据添加(INSERT) 57
3.4.2 数据修改(UPDATE) 58
3.4.3 数据删除(DELETE) 59
3.5 小结 60
4.1.1 企业管理器 61
第4章 SQL Server 2000基础 61
4.1 SQL Server 2000常用工具简介 61
4.1.2 查询分析器 62
4.2 数据库的创建 66
4.2.1 注册SQL Server2000服务器 66
4.2.2 创建数据库 69
4.2.3 数据库的删除与分离 73
4.3 表的创建 75
4.3.1 数据类型 75
4.3.2 创建表 77
4.3.3 修改表 81
4.3.4 删除表 83
4.4 视图管理 84
4.4.1 创建视图 84
4.4.2 修改视图 87
4.4.3 删除视图 89
4.5 存储过程管理 90
4.5.1 创建存储过程 90
4.5.2 管理存储过程 92
4.5.3 删除存储过程 95
4.6 数据库的备份 95
4.6.1 生成数据库的SQL脚本 96
4.6.2 数据库备份与还原 98
4.7 小结 102
第5章 ADO.NET数据库访问技术 103
5.1 ADO.NET简介 103
5.1.1 ADO.NET的优点 103
5.1.2 ADO.NET与ADO的比较 104
5.2 ADO.NET的数据连接 105
5.2.1 ADO.NET与SQL Server数据库连接简介 106
5.2.2 数据集DataSet的使用 110
5.2.3 数据表DataTable的使用 115
5.2.4 DataReader的使用 118
5.3 ADO.NET的数据库基本操作 120
5.3.1 新增操作 122
5.3.2 删除操作 129
5.3.3 更新操作 131
5.3.4 ADO.NET在存储过程中的使用 134
5.4 小结 141
第6章 水晶报表Crystal Reports 142
6.1 Crystal Reports简介 142
6.1.1 Crystal Reports的功能 142
6.1.2 广泛的应用前景 143
6.2 Crystal Reports的基本概念 143
6.2.1 Crystal Reports的数据访问模型 143
6.2.2 Crystal Reports程序的层次架构 144
6.3.1 报表设计环境 146
6.3 在Crystal Report Designer中设计报表 146
6.3.2 创建报表 147
6.4 基于Windows应用程序的报表集成 155
6.4.1 报表绑定到报表浏览器的方式 156
6.4.2 预定义Windows报表浏览器的外观 158
6.4.3 动态改变报表 160
6.5 基于Web应用程序的报表集成 164
6.5.1 报表绑定到报表浏览器的方式 164
6.5.2 预定义Web报表浏览器的外观 167
6.6.1 在服务器上创建报表Web服务 168
6.6 基于Web服务的报表集成 168
6.6.2 在应用程序中使用报表Web服务 170
6.6.3 部署问题 171
6.7 小结 173
第2篇 实践篇 175
第7章 企业内部消息系统 176
7.1 系统概述 176
7.1.1 应用背景与系统功能 176
7.2 系统设计 177
7.1.3 系统特点 177
7.1.2 系统预览 177
7.2.1 系统功能模块划分 178
7.2.2 系统流程分析 178
7.3 数据库设计 179
7.3.1 数据库需求分析 179
7.3.2 数据库结构设计 179
7.4 数据库的生成与配置 179
7.4.1 建立数据库 179
7.4.2 设计数据表 180
7.4.3 设计视图 181
7.5 公共模块 182
7.5.1 添加全局变量 182
7.5.2 定义公共函数 182
7.6 登录模块 184
7.6.1 登录窗体控件布局 184
7.6.2 登录窗体状态预览 185
7.6.3 登录窗体代码实现 185
7.6.4 修改密码窗体控件布局 188
7.6.5 修改密码窗体状态预览 189
7.6.6 修改密码窗体代码实现 189
7.7 消息读取模块 191
7.7.1 消息浏览窗体控件布局 191
7.7.2 消息浏览窗体状态预览 193
7.7.3 消息浏览窗体代码实现 194
7.7.4 操作确认窗体控件布局 201
7.7.5 操作确认窗体状态预览 202
7.7.6 操作确认窗体代码实现 202
7.7.7 消息阅读窗体控件布局 204
7.7.8 消息阅读窗体状态预览 206
7.7.9 消息阅读窗体代码实现 206
7.8 消息发送模块 208
7.8.1 消息发送窗体控件布局 209
7.8.2 消息发送窗体状态预览 210
7.8.3 消息发送窗体代码实现 210
7.8.4 群体消息发送窗体控件布局 216
7.8.5 群体消息发送窗体状态预览 216
7.8.6 群体消息发送窗体代码实现 217
7.8.7 消息回复窗体控件布局 222
7.8.8 消息回复窗体状态预览 223
7.8.9 消息回复窗体代码实现 223
7.9 难点与技巧 223
7.9.1 全局变量的使用 223
7.9.2 将操作集中,方便用户 224
7.9.3 使用DataAdapter的Update方法来更新数据库 224
7.10 小结 224
8.1.2 系统预览 225
8.1.1 应用背景与系统功能 225
第8章 进销存管理系统 225
8.1 系统概述 225
8.1.3 系统特点 226
8.2 系统设计 226
8.2.1 系统功能模块划分 227
8.2.2 系统流程分析 227
8.3 数据库设计 228
8.3.1 数据库需求分析 228
8.3.2 数据库结构设计 228
8.4.2 设计数据表 229
8.4 数据库的生成与配置 229
8.4.1 建立数据库 229
8.4.3 设计视图 233
8.5 公共模块 235
8.5.1 添加全局变量 235
8.5.2 定义公共函数 235
8.6 主窗体 237
8.6.1 主窗体控件布局 237
8.6.2 主窗体状态预览 238
8.6.3 主窗体代码实现 239
8.7 系统管理模块 244
8.7.1 用户管理窗体控件布局 245
8.7.2 用户管理窗体状态预览 246
8.7.3 用户管理窗体代码实现 247
8.7.4 厂商管理窗体控件布局 258
8.7.5 厂商管理窗体状态预览 259
8.7.6 厂商管理窗体代码实现 259
8.7.8 类别管理窗体控件布局 263
8.7.7 使用DataGrid控件更新数据源 263
8.7.9 类别管理窗体状态预览 264
8.7.10 商品管理窗体控件布局 265
8.7.11 商品管理窗体状态预览 266
8.7.12 商品管理窗体代码实现 267
8.8 订单管理模块 276
8.8.1 订单管理窗体控件布局 276
8.8.2 订单管理窗体状态预览 277
8.8.3 订单管理窗体代码实现 278
8.9.1 入库管理窗体控件布局 284
8.9 出入库管理模块 284
8.9.2 入库管理窗体状态预览 285
8.9.3 出库管理实现的注意点 286
8.10 查询统计模块 286
8.10.1 订单查询窗体控件布局 286
8.10.2 订单查询窗体状态预览 288
8.10.3 订单查询窗体代码实现 288
8.10.4 库存查询窗体控件布局 292
8.10.6 库存查询窗体代码实现 293
8.10.5 库存查询窗体状态预览 293
8.10.7 出入库查询窗体控件布局 296
8.10.8 出入库查询窗体状态预览 297
8.10.9 出入库查询窗体代码实现 297
8.11 难点与技巧 298
8.11.1 控件的动态生成 298
8.11.2 保证信息的准确 298
8.11.3 动态组成SQL语句 298
8.12 小结 298
9.1.1 应用背景与系统功能 299
第9章 考勤系统 299
9.1 系统概述 299
9.1.2 系统预览 300
9.1.3 系统特点 300
9.2 系统设计 301
9.2.1 系统功能模块划分 301
9.2.2 系统流程分析 302
9.3 数据库设计 303
9.3.1 数据库需求分析 303
9.3.2 数据库结构设计 303
9.4 数据库的生成与配置 303
9.4.1 建立数据库 303
9.4.2 设计数据表 304
9.4.3 设计视图 306
9.5 公共模块 311
9.5.1 添加全局变量 311
9.5.2 定义公共函数 312
9.5.3 刷卡相关类 314
9.5.4 配置相关类 317
9.6 主窗体 322
9.6.1 主窗体控件布局 323
9.6.2 主窗体状态预览 324
9.6.3 主窗体代码实现 324
9.7 系统设置 331
9.7.1 总体设置窗体控件布局 332
9.7.3 总体设置窗体代码实现 333
9.7.2 总体设置窗体状态预览 333
9.7.4 部门设置窗体控件布局 335
9.7.5 部门设置窗体状态预览 335
9.7.6 部门设置窗体代码实现 336
9.7.7 员工设置窗体控件布局 338
9.7.8 员工设置窗体状态预览 339
9.7.9 员工设置窗体代码实现 340
9.7.10 班次设置窗体控件布局 346
9.7.13 班次详细设置窗体控件布局 348
9.7.12 班次设置窗体代码实现 348
9.7.11 班次设置窗体状态预览 348
9.7.14 班次详细设置窗体状态预览 350
9.7.15 班次详细设置窗体代码实现 351
9.7.16 每月班次设置窗体控件布局 351
9.7.17 每月班次设置窗体状态预览 352
9.7.18 每月班次设置窗体代码实现 353
9.8 信息查询及考勤统计模块 361
9.8.1 员工查询窗体控件布局 361
9.8.2 员工查询窗体状态预览 362
9.8.3 员工查询窗体代码实现 363
9.8.4 部门查询窗体控件布局 363
9.8.5 部门查询窗体状态预览 364
9.8.6 部门查询窗体代码实现 364
9.8.7 刷卡记录窗体控件布局 364
9.8.8 刷卡记录窗体状态预览 365
9.8.9 刷卡记录窗体代码实现 366
9.8.10 考勤统计窗体控件布局 366
9.8.12 考勤统计窗体代码实现 367
9.8.11 考勤统计窗体状态预览 367
9.9 难点与技巧 368
9.9.1 StringBuilder对象与String对象 368
9.9.2 在本系统中使用线程的原因 368
9.9.3 静态对象与静态方法 368
9.10 小结 369
10.1.2 系统功能 370
10.1.1 应用背景 370
10.1 系统概述 370
第10章 教务管理系统 370
10.1.3 系统特点 371
10.2 系统设计 371
10.2.1 系统功能模块划分 371
10.2.2 系统流程分析 372
10.3 数据库设计 372
10.3.1 数据库表结构设计 373
10.3.2 数据库表的SQL脚本 374
10.4.2 定义公共函数 376
10.4.1 添加全局变量 376
10.4 公共模块 376
10.5 窗体及代码设计 379
10.5.1 主窗体设计 379
10.5.2 用户管理 384
10.5.3 系别管理 395
10.5.4 班级管理 401
10.5.5 课程管理 408
10.5.6 学籍管理 410
10.5.7 课表设置 421
10.5.8 成绩管理 434
10.5.9 成绩查询 436
10.6 难点与技巧 441
10.6.1 函数的重载 442
10.6.2 函数的重用 442
10.6.3 适当地提示 442
10.6.4 程序的调试 442
10.7 小结 442
附录A SQL Server常用数据类型 443