什么是 Microsoft Access?为初学者梳理可在 M365 E3/E5 中使用的小型数据库
关于本文
本文是通过利用生成式 AI 的自动生成流程创建的。在确认了 Microsoft 365 Enterprise 的当前计划信息与 Microsoft 官方信息的基础上,将 Access 整理为面向 Windows 的数据库,用以对小型业务数据进行结构化处理,而不是将其视为“Excel 的升级版”。验证状态:📘 已确认 Microsoft 官方信息・实机未验证
Microsoft Access 是一种关系型数据库,它可以将多个表关联起来,并在一个桌面应用程序中组合从输入界面、搜索、统计到报表的完整功能。关系型数据库所谓“关系”,例如将“员工”和“部门”制作为不同的表,并通过 ID 将它们关联起来的概念。
先梳理术语
| 术语 | 面向初学者的含义 |
|---|---|
| 表 | 以行和列保存数据的表格 |
| 主键 | 无重复地标识1条记录的ID |
| 关系 | 通过ID等将不同表格连接起来的关联关系 |
| 查询 | 指定条件进行搜索和汇总的机制 |
| 窗体 | 供用户输入和查看的界面 |
| 报表 | 为打印或正式文档排版整理的输出 |
| VBA | 能够将Access中的常规操作自动化的编程语言 |
Access内部是如何连接的?
flowchart LR
U[利用者] --> F[フォーム\n入力・検索]
F --> Q[クエリ\n抽出・集計]
Q --> T1[(社員テーブル)]
Q --> T2[(部署テーブル)]
T1 --> R[レポート\n帳票・印刷]
T2 --> R
V[VBA\n定型処理] -.補助.-> F
V -.補助.-> R
在Excel中,往往会在一张表格里反复填写部门名称等信息,而Access的基本设计是将“部门”和“员工”分开并进行关联。
在M365 E3/E5中的定位
| 项目 | Microsoft 365 E3 | Microsoft 365 E5 |
|---|---|---|
| Access 桌面版 | 适用对象 | 适用对象 |
| 主要使用环境 | Windows 电脑 | Windows 电脑 |
| Access 网页版 | 不可将其视为与现有 Access 桌面版同等功能的网页版 | 同左 |
| 是否会因为是 E5 而使 Access 本身功能更强大 | 不应视为基本功能的差异 | 不应视为基本功能的差异 |
E3/E5 的主要差异在于安全性、合规性以及分析等整个套件层面。我们不会为了使用 Access 而专门选择 E5。实际的签约 SKU 和提供条件请在部署时参考微软官方对比表进行最终确认。
身边的例子:不要在员工表中多次写入部门名称
首先考虑以下两张表。
部署 - DepartmentId ← 主キー - DepartmentName 社員 - EmployeeId ← 主キー - EmployeeName - DepartmentId ← 部署表につなぐ値
仅使用 SELECT 查看关系
SELECT
Employee.EmployeeName,
Department.DepartmentName
FROM
Department
INNER JOIN Employee
ON Department.DepartmentId = Employee.DepartmentId;
这是一个不修改数据的读取示例。如果员工姓名及其所属的部门名称并排显示,则说明成功了。
更改一处
添加要搜索的列,或增加一个条件,以观察结果如何变化。从一开始就不要尝试 UPDATE 或 DELETE 这样会更安全。
普通用户、文职人员和IT部门的视角有所不同
| 立场 | 在 Access 中查看的要点 |
|---|---|
| 普通用户 | 录入表单是否易于理解,是否易于搜索 |
| 事务职 | 能否减少 Excel 转录,能否重复利用表单 |
| 偏开发人员 | 主键、关系、查询是否整理规范 |
| IT系统部门 | 文件放置、备份、宏/VBA、外部数据库连接及维护人员是否明确 |
VBA 从“阅读”示例开始
如果只是在立即窗口中显示表名,则不会改写数据。
Sub ListTableNames()
Dim tdf As DAO.TableDef
For Each tdf In CurrentDb.TableDefs
If Left$(tdf.Name, 4) <> "MSys" Then
Debug.Print tdf.Name
End If
Next tdf
End Sub
查看内容: 自己创建的表名。
成功条件: 表名列表显示,且记录内容未被修改。
修改一处: TableDefs 在查明之后,可以此为基础,用相同的思路作为学习 QueryDefs 等其他对象的入口。
不要认为将 Access 放到“共享文件夹中它就是数据库服务器”
即使是小型工具,在多人使用时也需要考虑前端与数据的分离、备份、网络质量、并发使用以及更新方法。随着人数和重要性的增加,诸如 Dataverse、SQL 数据库、SharePoint 列表等其他基础架构也将成为对比备选项。
flowchart TB
A[小規模・Windows中心\nAccessで完結] --> B{利用者や重要度が増えた?}
B -- いいえ --> C[バックアップと保守を継続]
B -- はい --> D[データ層を分離]
D --> E[SQL / Dataverse等も比較]
管理员需确认的事项
目标用户的 Microsoft 365 许可证和 Access 部署状态
32位 / 64位与现有加载项及 ODBC 驱动程序的兼容性
VBA、宏以及受信任位置的处理
accdb 文件的保存位置与备份
多人使用时的前端/后端架构
个人制作的 Access 是否已经变成了“只有经办人才能修好的业务系统”
官方信息与一手资料
Access 的价值并不在于拥有比 Excel 更花哨的功能。而在于能够划分数据、定义关系,并复用相同的查询、录入和报表处理流程中。对于小型业务来说虽然很方便,但如果用户数量、重要性以及云端需求增加,重新评估数据基础设施本身会更加安全。
