第一部分 理解Microsoft Access 3
第1章 Microsoft Access不仅仅是数据库 3
1.1 什么是数据库 3
1.1.1 关系数据库 4
1.1.2 数据库功能 4
1.2 作为RDBMS的Microsoft Access 5
1.2.1 数据定义和存储 5
1.2.2 数据处理 7
1.2.3 数据控制 9
1.3 Microsoft Access超越数据库的特性 10
开发应用程序逻辑 10
1.4 决定转移到数据库软件 11
第2章 Microsoft Access的用途 14
2.1 在小型企业中 14
2.2 在合同操作中 16
2.3 作为销售和市场工具 17
2.4 在大型公司中 18
2.4.1 工作组应用程序 20
2.4.2 信息处理系统 20
2.5 作为个人的RDBMS 21
第3章 Microsoft Access一览 23
3.1 Windows功能 23
3.2 Microsoft Access的体系结构 25
3.3 Entertainment Scheduling数据库探讨 28
3.4 [表] 30
3.4.1 [设计]视图中的[表]窗口 32
3.4.2 [数据库]视图中的[表]窗口 34
3.5 查询 36
3.5.1 在[设计]视图中的[查询]窗口 38
3.5.2 在[数据表]视图中的[查询]窗口 38
3.6 窗体 39
3.6.1 在[设计]视图中的[窗体]窗口 41
3.6.2 在[窗体]视图中的[窗体]窗口 43
3.7 报表 44
3.7.1 在[设计]视图中的[报表]窗口 46
3.7.2 [打印预览]中的[报表]视图 48
3.8 数据访问页 49
3.8.1 在[设计]视图中的[数据访问页]窗口 51
3.8.2 [页]视图中的[数据访问页]窗口 53
3.9 宏 54
3.10 模块 57
3.11 管理对象 59
4.1 应用程序设计基础 65
第二部分 建立数据库 65
第4章 设计数据库应用程序 65
4.1.1 步骤1:明确任务 66
4.1.2 步骤2:绘制任务流程图 66
4.1.3 步骤3:明确数据元素 66
4.1.4 步骤4:组织数据 66
4.1.5 步骤5:设计原型和用户界面 66
4.1.7 步骤7:测试、审阅和完善 67
4.1.6 步骤6:构造应用程序 67
4.2 一个应用程序设计策略 68
4.2.1 分析任务 69
4.2.2 区分数据或信息 70
4.2.3 选择数据 70
4.2.4 组织任务 72
4.3 数据分析 73
4.3.1 选择数据库主题 73
4.3.2 主题到数据库的映射 74
4.4 数据库设计概念 75
4.4.1 如何避免浪费 75
4.4.2 标准化就是解决办法 76
4.4.3 有效的关系 82
4.5 何时打破规则 83
4.5.1 提高关键任务的性能 84
4.5.2 捕获“即时”数据 84
4.5.3 报表快照数据 85
第5章 在Microsoft Access中建立数据库 86
5.1 新建数据库 87
5.1.1 使用数据库向导 87
5.1.2 新建空数据库 91
5.2 使用Microsoft Access帮助 92
5.3 创建第一个简单的表 97
5.4 使用[表向导] 99
5.5 在“设计”视图创建表 103
5.6 定义字段 104
5.6.1 字段的数据类型 105
5.6.2 字段属性 107
5.6.3 完成“订单”表中的字段 111
5.6.4 定义简单字段有效性规则 113
5.6.5 定义输入掩码 114
5.7 定义主键 118
5.8 定义表的有效性规则 119
5.9 定义关系 120
定义您的第一个关系 121
5.10 添加索引 123
5.10.1 单字段索引 123
5.10.2 多字段索引 124
5.11 打印表定义 126
5.12 数据库的局限 127
第6章 修改数据库设计 128
6.1 开始之前 129
制作备份 130
6.2 删除表 131
6.3 重命名表 132
6.4 更改字段名称 133
6.5 插入字段 135
6.6 复制字段 136
6.7 删除字段 138
6.8 移动字段 138
6.9.1 更改数据类型 140
6.9 更改数据属性 140
6.9.2 更改数据长度 143
6.9.3 转换错误 144
6.10 取消更改 145
6.11 使用[表分析器向导] 145
6.12 利用查阅属性 150
6.13 更改主键 154
6.14 压缩数据库 155
第三部分 数据操作 159
第7章 使用数据表 159
7.1 查看数据 159
7.1.1 移动 160
7.1.2 键盘快捷键 161
7.2 修改数据表格式 162
7.2.1 改变表行的高度和表列的宽度 162
7.2.3 隐藏或显示表列 164
7.2.2 安排表列 164
7.2.4 冻结列 165
7.2.5 删除网格线 165
7.2.6 选择字体 167
7.2.7 保存数据表格式 168
7.3 使用子数据表 168
7.4.1 记录显示器 171
7.4.2 添加新的数据 171
7.4 更改数据 171
7.4.3 选择和更改数据 172
7.4.4 替换数据 174
7.4.5 复制和粘贴数据 174
7.4.6 删除数据 175
7.5 使用超级链接 176
7.5.1 激活超级链接 177
7.5.2 插入新的超级链接 178
7.5.3 编辑原有的超级链接 178
7.6.1 数据的排序 179
7.6 数据的排序和搜索 179
7.6.2 数据的搜索和筛选 181
7.7 打印数据表 185
7.7.1 打印预览 186
7.7.2 页面设置 187
7.7.3 打印 187
第8章 使用选择查询添加功能 189
8.1 从单一表中选择数据 191
8.1.1 设定字段 192
8.1.2 设定字段属性 193
8.1.3 输入选择准则 195
8.1.4 计算值 199
8.1.5 使用表达式生成器 202
8.1.6 设定字段名称 206
8.1.7 数据排序 206
8.1.8 总计查询 208
8.1.9 使用查询参数 211
8.1.10 交叉表查询 213
8.2 搜索多个表 216
8.2.1 外部联接 218
8.2.2 在查询上创建查询 220
8.2.3 在总计查询中使用多个表 222
8.3 使用查询向导 223
8.4 使用选择查询更新数据的限制 225
8.5 自定义查询属性 226
8.5.1 控制查询输出 227
8.5.2 使用唯一记录和值 228
8.5.3 其他查询属性 230
第9章 使用操作查询修改数据 231
9.1 更新表行组 231
9.1.1 使用选择查询测试 231
9.1.2 将选择查询转换为更新查询 233
9.1.3 运行一个更新查询 234
9.2.1 创建生成表查询 235
9.1.4 更新多个字段 235
9.2 创建新的表 235
9.2.2 运行生成表查询 237
9.3 从其他表中插入数据 238
9.3.1 创建追加查询 239
9.3.2 运行一个追加查询 240
9.4 示例1:使用追加查询保存数据 241
9.5 操作查询的疑难解答 245
9.5.1 操作查询的常见错误和问题 245
9.6.1 使用选择查询和参数进行测试 246
9.5.2 错误示例 246
9.6 删除表行组 246
9.6.2 使用删除查询 248
9.7 删除不常使用的数据 248
9.8 示例2:更新/追加来自导入数据的表行 249
第10章 导入、链接和导出数据 254
10.1 开放式数据库连接简介 254
10.3 导入数据和数据库 256
10.2 导入和链接数据库文件 256
10.3.1 导入dBASE文件 257
10.3.2 导入Paradox文件 259
10.3.3 导入SQL表 260
10.3.4 导入Access对象 264
10.4 导入电子表格数据 265
10.4.1 准备一个电子表格 266
10.4.2 导入一个电子表格 267
10.4.3 纠正错误 270
10.5 导入文本文件 272
10.5.1 准备一个文本文件 272
10.5.2 导入一个文本文件 274
10.5.3 纠正错误 277
10.6 修改被导入的表 278
10.7 链接文件 279
10.7.1 安全考虑 279
10.7.2 性能考虑 280
10.7.3 连接Access表 281
10.7.4 链接dBASE和Paradox文件 282
10.7.5 链接文本和电子表格文件 284
10.7.6 链接SQL表 284
10.7.7 修改链接的表 285
10.7.8 对已链接的表取消链接 285
10.7.9 使用链接表管理器 286
10.8 导出数据 286
10.8.1 导出到另一个Access数据库 287
10.8.2 导出到电子表格、dBASE或Paradox文件 288
10.8.3 快速导出到Microsoft Excel 288
10.8.4 导出到文本文件 289
10.8.5 导出到Microsoft Word中的邮件合并文档 290
10.8.6 导出SQL表 291
第11章 高级查询设计——SQL 293
11.1 SQL历史简介 293
11.2 SQL语法规范 294
11.3 Microsoft Access中的SQL的SEIECT语法 295
11.3.1 列名 296
11.3.2 表达式 296
11.3.3 FROM子句 298
11.3.4 GROUP BY子句 300
11.3.5 HAVING子句 301
11.3.6 IN子句 303
11.3.7 JOIN操作 305
11.3.8 ORDER BY子句 308
11.3.9 参数声明 309
11.3.10 谓词:BETWEEN 311
11.3.11 谓词:比较 311
11.3.12 谓词:EXISTS 312
11.3.13 谓词:IN 313
11.3.14 谓词:LIKE 314
11.3.15 谓词:NULL 315
11.3.16 谓词:限定 315
11.3.17 搜索条件 316
11.3.18 SELECT语句 319
11.3.19 子查询 330
11.3.20 总计函数:AVG 333
11.3.21 总计函数:COUNT 334
11.3.22 总计函数:MAX 335
11.3.23 总计函数:MIN 337
11.3.24 总计函数:STDEV、STDEVP 339
11.3.25 总计函数:SUM 339
11.3.26 总计函数:VAR、VARP 340
11.3.27 TRANSFORM语句 341
11.3.28 UNION查询操作符 342
11.3.29 WHERE子句 343
11.4 SQL操作查询 344
11.4.1 DELECT语句 344
11.4.2 INSERT语句(追加查询) 346
11.4.3 SELECT…INTO语句(生成表查询) 347
11.4.4 UPDATE语句 350
11.5 复杂查询的示例 351
示例1:返回每个星期一的日期 352
示例2:生成一个预定的周的列表 353
示例3:显示没有预定的周 356
第四部分 使用窗体 361
第12章 窗体基础 361
12.1 窗体的使用 361
12.2.1 页眉、主体和页脚 362
12.2 窗体教程 362
12.2.2 多页窗体 363
12.2.3 连续窗体 364
12.2.4 子窗体 365
12.2.5 弹出窗体 365
12.2.6 模式窗体 366
12.2.7 特殊控件 367
12.3 遍历窗体及处理数据 372
12.3.1 查看数据 373
12.3.2 添加记录和更改数据 375
12.4 搜索和排序数据 380
12.4.1 执行一次简单的搜索 380
12.4.2 在窗体字段上执行快速排序 380
12.4.3 对窗体添加筛选 380
12.5 打印窗体 382
第13章 创建窗体 385
13.1 窗体和面向对象编程 385
13.2 从头开始——一个简单的输入窗体 387
13.2.1 使用设计工具创建新的窗体 387
13.2.2 为tblClubs表创建一个简单的输入窗体 395
13.2.3 检查设计结果 402
13.3 使用[窗体向导] 404
13.3.1 使用[窗体向导]创建基本Orders窗体 404
13.3.2 修改Orders窗体 408
13.4 通过窗体简化数据输入 409
13.4.1 组合框和列表框 409
13.4.2 切换按钮、复选框和选项按钮 413
第14章 自定义窗体 415
14.1 将控件对齐和调整控件大小 415
14.1.1 调整控件的大小以适应内容 416
14.1.2 调整控件布局 417
14.1.3 使控件与网格对齐 418
14.1.4 排列控件 420
14.1.5 调整控件宽度 422
14.2 增强窗体的外观 424
14.2.1 直线和矩形 424
14.2.2 颜色和特殊效果 426
14.2.3 字体 427
14.3 设置控件属性 429
14.3.1 格式属性 429
14.3.2 添加滚动条 436
14.3.3 启用和锁定控件 437
14.4.2 设置[Tab键次序] 438
14.4.1 [默认视图]和[允许的视图]属性 438
14.4 设置[窗体]属性 438
14.4.3 [记录选定器]、[滚动条]和[浏览按钮]属性 439
14.4.4 [弹出方式]和[模式]属性 439
14.4.5 控制编辑和筛选 441
14.4.6 [控制框]和[最大最小化按钮]属性 441
14.4.7 设置边框样式 442
14.5 设置窗体和控件的默认值 442
处理[自动套用格式] 443
第15章 高级窗体设计 444
15.1 使一个窗体以多表查询为基础 444
多对一窗体 444
15.2 创建和嵌入子窗体 448
15.2.1 指定子窗体源 449
15.2.2 设计子窗体 450
15.2.3 指定主窗体源 453
15.2.5 嵌入子窗体 454
15.2.4 创建主窗体 454
15.3 使用条件格式 457
15.4 引入ActiveX控件——选项卡控件 458
15.5 创建多页窗体 461
15.6 用命令按钮链接窗体 464
添加命令按钮 464
16.2 报表概况 469
16.1 报表的使用 469
第16章 报表基础 469
第五部分 发布信息 469
16.2.1 打印预览第一次外观效果 470
16.2.2 页眉、主体节、页脚和分组 472
16.2.3 子报表 473
16.2.4 报表中的对象 476
16.3 打印报表 476
打印设置 477
17.1.2 设计报表 481
17.1.1 创建报表查询 481
第17章 构造报表 481
17.1 从头开始——一个简单的报表 481
17.1.3 信息的排序与分组 483
17.1.4 完成报表 485
17.2 使用报表向导 487
17.2.1 选择报表类型 487
17.2.2 指定向导选项 488
17.2.3 查看结果 493
18.1 为复杂报表建立查询 495
第18章 高级报表的设计 495
18.2 定义排序与分组准则 497
18.3 根据数据类型设定分组范围 498
18.4 创建基本Group Contract Status报表 498
18.5 设定节和报表的属性 501
18.5.1 节属性 501
18.5.2 报表属性 503
18.6.1 添加打印日期和页码 506
18.6 使用计算值 506
18.6.2 执行计算 507
18.6.3 连接文本串并隐藏冗余值 511
18.6.4 计算百分比 513
18.6.5 使用[运行总和]属性 515
18.6.6 利用条件格式设置 517
18.7 创建并嵌入一个子报表 518
18.7.1 建立子报表查询 519
18.7.2 设计子报表 522
18.7.3 嵌入子报表 523
18.7.4 浏览所嵌入的结果 524
18.8 创建一个“电子表格”报表 526
18.8.1 创建汇总查询 526
18.8.2 设计“只汇总”的报表 527
第19章 在Web上发布数据 531
19.1 使用Web 531
19.1.1 传递静态Web页 531
19.1.2 发送动态查询结果 533
19.1.3 使用HTML窗体处理实时数据 535
19.1.4 发现可能性 537
19.1.5 使用数据访问页 538
19.2 将数据保存为Web页 540
19.2.1 创建静态HTML文件 540
19.2.2 创建动态活动服务器页 542
19.3 使用数据访问页 545
19.3.1 用途及局限性 545
19.3.2 可创建的页的类型 546
19.3.3 使用向导创建页 547
19.3.4 修改数据访问页 553
19.3.5 打开并保存数据访问页 558
19.4 使用FrontPage加强页的功能 559
19.5 把页上传到Web服务器 564
19.5.1 用Office Web页设备复制页 564
19.5.2 用文件传输来发布页 566
19.5.3 用FrontPage发布完整的Web 567
20.1 宏的用途 571
第六部分 创建应用程序 571
第20章 使用宏增强功能 571
20.2 创建简单的宏 572
20.2.1 宏窗口 573
20.2.2 保存宏 575
20.2.3 测试宏 575
20.3 定义多个操作 576
20.4 将宏分组 578
20.5 条件表达式 580
20.6 宏操作汇总 581
20.6.1 打开和关闭Access对象 582
20.6.2 打印数据 583
20.6.3 执行查询 583
20.6.4 测试条件和控制操作流向 584
20.6.5 设置值 584
20.6.6 查找数据 584
20.6.8 控制显示和焦点 585
20.6.7 建立自定义菜单和执行菜单命令 585
20.6.9 将操作通知用户 586
20.6.10 重命名、复制、删除、保存、导入和导出对象 586
20.6.11 运行另一个应用程序 587
20.7 窗体和报表事件汇总 587
20.7.1 打开和关闭窗体与报表 588
20.7.2 更改数据 588
20.7.3 探测焦点改变 590
20.7.4 探测应用于窗体的筛选 591
20.7.5 捕获键盘和鼠标事件 591
20.7.6 打印 592
20.7.7 激活自定义窗体、报表或应用程序菜单 592
20.7.8 捕获错误 593
20.7.9 探测计时器期限 593
21.1.2 引用窗体和报表属性的规则 594
21.1.1 引用窗体和报表的规则 594
第21章 用宏自动运行应用程序 594
21.1 引用窗体和报表对象 594
21.1.3 引用窗体和报表的控件以及它们的属性的规则 595
21.1.4 引用子窗体和子报表的规则 595
21.2 打开二级窗体 596
创建SeeCityInformation宏 596
21.3 同步两个关联的窗体 599
创建SyncWeddingAndCity宏 599
21.4.1 验证数据有效性 602
21.4 验证数据有效性并预设值 602
21.4.2 在相链接的窗体之间传递状态信息 607
21.4.3 预设值 608
21.5 将宏转换为Visual Basic代码 611
第22章 Visual Basic基本原理 614
22.1 使用Visual Basic代替宏 614
22.1.1 何时使用宏 614
22.1.2 何时使用Visual Basic 615
22.2.1 模块 616
22.2 Visual Basic开发环境 616
22.2.2 “Visual Basic编辑器”窗口 618
22.2.3 使用Visual Basic调试工具 622
22.3 变量和常量 629
22.3.1 数据类型 629
22.3.2 变量和常量范围 631
22.4 声明变量 632
22.4.1 Const语句 632
22.4.2 Dim语句 633
22.4.3 Enum(枚举)语句 635
22.4.4 Event语句 637
22.4.5 Private语句 638
22.4.6 Public语句 639
22.4.7 ReDim语句 640
22.4.8 Static语句 641
22.4.9 Type类型 642
22.5.1 Access应用程序的结构 643
22.5 集合、对象、属性和方法 643
22.5.2 “数据访问对象”(DAO)的结构 645
22.5.3 “ActiveX数据对象”(ADO)结构 647
22.5.4 引用集合、对象和属性 649
22.5.5 指定对象变量——Set语句 651
22.5.6 对象方法 653
22.6 函数和子例程 660
22.6.1 Function语句 660
22.6.2 Sub语句 662
22.7 控制语句流 663
22.7.1 Call语句 663
22.7.2 Do…Loop语句 664
22.7.3 For…Next语句 665
22.7.4 For Each…Next语句 665
22.7.5 GoTo语句 666
22.7.6 If…Then…Else语句 666
22.7.7 Select Case语句 668
22.7.9 Stop语句 669
22.7.8 RaiseEvent语句 669
22.7.10 While…Wend语句 670
22.7.11 With语句 670
22.8 运行宏操作和菜单命令 671
22.8.1 DoCmd对象 671
22.8.2 与宏操作等价的Visual Basic操作 672
22.9 追踪错误 672
On Error语句 672
22.10.1 随机“卖”书的过程 673
22.10 一些复杂的Visual Basic示例 673
22.10.2 检查所有错误代码的过程 684
第23章 使用Visual Basic自动化应用程序 690
23.1 帮助输入数据 690
23.1.1 填写相关数据 690
23.1.2 设置自定义的输入掩码 693
23.1.3 处理“不在列表中”事件 695
23.2 在多页窗体上控制按Tab键的操作 699
23.3.1 使用[多项选择]列表框 701
23.3 自动执行数据选择 701
23.3.2 提供自定义的“按窗体查询” 705
23.3.3 从总结列表中选择 714
23.4 链接到另一个窗体或报表的相关数据上 715
23.4.1 使用筛选链接窗体 715
23.4.2 使用筛选来链接报表 717
23.4.3 使用Class事件来同步两个窗体 719
23.5 创建有意义的信息和帮助 722
23.5.1 创建提供信息的MsgBox消息 722
23.5.2 使用Office助手和自定义“气球”帮助 723
23.6 自动执行复杂的任务 728
23.6.1 从相关窗体中引发数据任务 728
23.6.2 链接到相关任务上 731
23.6.3 验证复杂数据的有效性 737
23.6.4 使用日历自定义控件 738
24.1.1 定义新的工具栏 742
24.1 创建自定义窗体工具栏 742
第24章 最后的润饰 742
24.1.2 优化新的工具栏 747
24.2 创建自定义窗体菜单栏 749
定义新菜单栏 750
24.3 使用[性能分析器]向导优化数据库 754
24.4 禁用窗体设计视图 755
24.5 定义主切换面板窗体 757
24.5.1 定义切换面板窗体 757
24.5.2 使用切换面板管理器 758
24.6 设置数据库的启动属性 761
24.7 执行最后的Visual Basic编译 762
第25章 创建应用程序以后 764
25.1 利用复制功能 764
25.1.1 复制过程中需要考虑的问题 765
25.1.2 创建一个副本 765
25.1.3 同步副本 768
25.2 确保数据库的安全 769
25.2.1 Access安全性体系结构 770
25.2.2 用户、组及权限 771
25.2.3 使用[安全机制向导] 775
25.2.4 创建被保护的数据库 784
25.3 与多用户共享应用程序 789
25.3.1 共享MDB文件 790
25.3.2 将应用程序升迁到Microsoft SQL Server 791
25.4 创建只执行数据库 811
25.5 创建应用程序快捷方式 812
附录 安装Microsoft Office 815
A.1 安装Microsoft数据引擎(MSDE) 819
A.2 管理ODBC连接 821
A.2.1 为Microsoft Access创建ODBC系统数据源名 822
A.2.2 使用ODBC连接到Microsoft SQR Sever 825
A.3 从先前版本的转化 828
转换问题 829