Microsoft Access 实用教程
第一部分:Access 是什么?为什么选择它?
什么是 Access? Microsoft Access 是微软公司发布的关系型数据库管理系统,它结合了 Microsoft Jet Database Engine 和 图形用户界面,让你无需编写复杂的代码,就能轻松创建和管理功能强大的桌面数据库应用程序。

Access 是一个集数据存储、数据管理、数据查询和用户界面于一体的工具。
为什么选择 Access?
- 易学易用:相比 SQL Server、Oracle 等大型数据库,Access 的图形化界面非常直观,初学者也能快速上手。
- 功能强大:它不仅能存储数据,还能创建复杂的查询、美观的报表和用户友好的窗体,甚至可以编写 VBA 代码实现自动化。
- 一体化解决方案:一个
.accdb文件就包含了所有数据、表、查询、窗体、报表等,方便分发和管理。 - 兼容性好:与 Office 套件(尤其是 Excel)无缝集成,数据导入导出非常方便。
- 成本效益高:作为 Office 套件的一部分(或单独购买),其成本远低于专业的数据库服务器软件。
Access 的核心对象
一个 Access 数据库(.accdb 文件)包含以下七个核心对象,它们协同工作,构成了一个完整的数据库应用:
| 对象 | 中文名 | 作用 | 通俗比喻 |
|---|---|---|---|
| Tables | 表 | 存储数据的唯一地方,是数据库的基础。 | 数据仓库的货架,每个格子放一种东西。 |
| Queries | 查询 | 从一个或多个表中查找、筛选、计算和组合数据。 | 仓库管理员,根据你的要求(订单)去货架上找货。 |
| Forms | 窗体 | 提供一个用户友好的界面,用于输入、编辑和显示数据。 | 仓库的收货/发货柜台,方便员工操作。 |
| Reports | 报表 | 将数据以预设的格式(如列表、图表)打印或导出。 | 仓库的月度/年度盘点报告,格式清晰,用于汇报。 |
| Macros | 宏 | 自动执行一系列操作,无需编写代码。 | 一连串预设好的动作指令,如“开门-拿货-关门”。 |
| Modules | 模块 | 使用 VBA (Visual Basic for Applications) 编写的自定义代码,实现复杂逻辑。 | 仓库的高级自动化机器人,能执行非常复杂的任务。 |
| Data Pages | 数据页 | (旧版本) 用于在 Web 上发布数据,Access 2010 及以后版本已不推荐使用。 | (已过时) |
第二部分:从零开始创建你的第一个 Access 数据库
我们将以一个简单的 “学生信息管理系统” 为例,走完整个流程。

步骤 1:创建数据库文件
- 打开 Microsoft Access。
- 选择 “空白数据库”。
- 在右侧的 “文件名” 框中,输入你的数据库名称,
学生信息管理系统.accdb。 - 点击 “创建” 按钮。
Access 会自动为你创建一个空的数据库,并默认打开一个名为 表1 的数据表视图。
步骤 2:创建第一个表——“学生表” 表是数据库的基石,我们来设计一个存储学生基本信息的表。
- 在 Access 窗口左侧的 “所有 Access 对象” 导航窗格中,双击 “表1”,进入数据表视图。
- 在 “单击以添加” 列标题下,直接输入字段名,如:
学号,姓名,性别,出生日期,班级,联系电话。 - 设置数据类型:点击每个字段,在顶部的 “字段” 选项卡中,设置其 “数据类型”。
学号:选择 “短文本” (Short Text),学号通常不长,且不参与计算。姓名:选择 “短文本”。性别:选择 “短文本”,或者更优的选择是 “查阅向导”,可以从下拉列表中选择“男”或“女”。出生日期:选择 “日期/时间” (Date/Time)。班级:选择 “短文本”。联系电话:选择 “短文本” 或 “长文本” (Long Text)。
- 设置主键:主键是表中每条记录的唯一标识符。
学号通常是主键。- 右键点击
学号字段的行首(灰色方块),选择 “主键”,Access 会在该字段前添加一个钥匙图标 🗝️。
- 右键点击
- 保存表:按
Ctrl + S,或在文件菜单中选择 “保存”,输入表名学生表,然后点击 “确定”。
你的第一个表就创建完成了!你可以在数据表视图中直接输入学生信息。
第三部分:深化核心功能
创建关联的表——“课程表”和“选课表” 一个学生可以选多门课,一门课也可以被多个学生选,这种“多对多”关系需要通过一个中间表(选课表)来实现。
- 课程表:
- 字段:
课程ID(主键, 短文本),课程名称(短文本),学分(数字)。
- 字段:
- 选课表 (也叫“junction table”或“linking table”):
- 字段:
ID(主键, 自动编号),学号(短文本),课程ID(短文本)。
- 字段:
建立表关系
- 点击顶部菜单栏的 “数据库工具” -> “关系”。
- 在 “显示表” 对话框中,双击
学生表、课程表和选课表,将它们添加到关系图中。 - 从
学生表中拖动学号字段,到选课表的学号字段上,松开鼠标,在弹出的对话框中,确保勾选 “实施参照完整性”,然后点击 “创建”,这表示一个选课记录必须对应一个真实的学生。 - 同样,从
课程表中拖动课程ID字段,到选课表的课程ID字段上,同样勾选 “实施参照完整性”,点击 “创建”。 - 关闭关系窗口,选择 “是” 保存布局。
创建查询——查找某个班级的所有学生 查询是提取数据的利器。
- 在左侧导航窗格中,点击 “创建” 选项卡。
- 点击 “查询设计”。
- 在 “显示表” 对话框中,双击
学生表,然后关闭对话框。 - 在设计网格中,双击
姓名、学号、性别、班级字段,将它们添加到网格中。 - 在
班级字段的 “条件” 行中,输入你要查询的班级,高三(1)班(注意:文本类型的数据需要用英文双引号括起来)。 - 点击 “运行” (感叹号图标 !),你就能看到所有高三(1)班的学生了。
创建窗体——优雅的数据输入界面 直接在数据表视图中输入数据不够美观,窗体提供了更好的体验。
- 在左侧导航窗格中,确保选中了
学生表。 - 点击 “创建” 选项卡。
- 点击 “窗体” 按钮,Access 会自动为你创建一个简单的单记录窗体。
- 进入窗体设计视图,你可以拖动字段、调整布局、添加标题等,使其更美观。
- 保存窗体,命名为
学生信息输入窗体。
创建报表——生成打印文档 报表用于生成格式化的、可打印的报告。
- 在左侧导航窗格中,选中
学生表。 - 点击 “创建” 选项卡。
- 点击 “报表” 按钮,Access 会自动生成一个包含所有字段的报表。
- 你可以切换到 “设计视图”,调整页眉、页脚、标题字体等,让报表更专业。
- 保存报表,命名为
学生名单报表。
第四部分:进阶技巧与最佳实践
使用宏实现自动化
假设你想在打开数据库时,自动显示 学生信息输入窗体。
- 在左侧导航窗格中,右键点击,选择 “宏” -> “宏”。
- 在宏设计器中,点击 “添加新操作”。
- 从下拉列表中选择
OpenForm。 - 在下方的参数中:
- 窗体名称:
学生信息输入窗体 - 视图:
窗体 - 窗口模式:
普通
- 窗体名称:
- 保存宏,命名为
AutoExec(注意:宏名必须为AutoExec),这个特殊的宏名会让 Access 在数据库启动时自动执行它。
VBA 编程入门 当宏无法满足复杂需求时,就需要 VBA 了。
- 按
Alt + F11打开 VBA 编辑器。 - 在 “插入” 菜单中选择 “模块”。
- 在代码窗口中输入以下简单代码,用于弹出一个欢迎消息:
Sub ShowWelcomeMessage() MsgBox "欢迎使用学生信息管理系统!", vbInformation, "提示" End Sub - 按
F5运行这段代码,你会看到一个消息框。 - 你可以将这个宏分配给窗体上的一个按钮,在窗体设计视图中,从 “控件” 组中添加一个 “按钮”,在弹出的向导中选择 “宏” 操作,并选择你刚刚创建的
ShowWelcomeMessage。
最佳实践
- 规范命名:为表、查询、窗体、报表等对象使用清晰、一致的命名规则(如
tbl_学生表,qry_学生查询)。 - 备份数据库:定期备份数据库文件(
.accdb),防止数据丢失,Access 提供了 “数据库工具” -> “管理和压缩” 功能。 - 分离数据库:对于多用户环境,最佳实践是 “前端/后端” 分离,将表(后端)放在一个文件中,将窗体、报表、查询(前端)放在另一个文件中,用户只使用前端文件,通过链接访问后端数据,可以提高性能并减少文件损坏风险。
- 避免在表中存储计算值:不要在
学生表中存储年龄,而是存储出生日期,然后通过查询或报表来计算年龄,这样可以保证数据的准确性。
第五部分:资源与总结
通过本教程,你已经掌握了 Access 数据库的核心概念和基本操作:
- 创建数据库。
- 设计表,设置字段、数据类型和主键。
- 建立表关系,确保数据一致性。
- 使用查询 筛选和提取数据。
- 设计窗体 优化数据输入体验。
- 生成报表 创建专业文档。
- 了解 宏 和 VBA 的自动化能力。
Access 是一个非常强大的工具,尤其适合中小型企业、部门级应用、个人数据管理等场景,希望这份教程能成为你学习 Access 的良好起点,多动手实践,你很快就能用它解决实际工作中的数据管理问题。
推荐学习资源
- Microsoft 官方文档:最权威、最准确的信息来源。
- YouTube 教程:搜索 "Access Tutorial for Beginners",有大量视频教程可供选择。
- Udemy / Coursera 等在线课程平台:系统性的课程,适合深入学习。
- 技术社区:如 Stack Overflow、CSDN、知乎等,遇到问题时可以寻求帮助。
