启明办公

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 62|回复: 1

拆分 Access 数据库为前端程序及后端数据库的好处及步骤 ...

[复制链接]

1

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2022-11-27 10:04:23 | 显示全部楼层 |阅读模式
Access数据库既可做为数据库后台,也可作为程序界面开发工具,将Access拆分为前后台,就可在局域网内快速实现一个中小型的网络多用户并发使用的管理软件系统。
一、拆分Access数据库的好处

1、可以将Access数据库后台放在网络共享文件夹供多用户并发使用
2、可以共用统一的数据源,所有用户新增 修改 保存的数据都统一存放。实现数据共享。
3、可以将前台程序(窗体 报表 模块 类模块 VBA代码)生成mde或accde (不含源码)从而保护作者的源码和版权
4、不希望用户直接对表进行设计更改,对不同的用户设置不同的权限和控制
5、 如果只是将数据库存储在网络共享上,则当用户打开窗体、查询、宏、模块或报表时,必须通过网络将这些对象发送给使用该数据库的每个用户。 如果拆分数据库,则每个用户都有自己的窗体、查询、宏、模块和报表副本。 因此,必须跨网络发送的唯一数据是表中的数据。 副本。 因此,必须跨网络发送的唯一数据是表中的数据。
6、方便更新数据库结构与更新程序版本。只需要修改共享的后台数据库,即可修改数据库的表结构。而更新前台程序功能,也不会影响后台数据库中的数据(如果不拆分,单个文件更新会影响现有最新数据,需要导入导出,非常不方便)






二、Access前后台拆分的简要步骤

1、打开要拆分的Access数据库,选择 数据库工具 选卡,单击 Access 数据库



2、在弹出的对话框中单击 拆分数据库



3、选择后端数据库要存放的位置(也可修改后端数据库名称)



4、拆分后,后台数据库的表是以链接表的方式存在于前端数据库中

可把前台程序复制到每台电脑,而把后端数据库放到局域网共享文件夹供多用户使用

拆分详细过程也可参考这篇:Access 拆分数据库及拆分的好处

三、Access 数据库拆分微软官方说明

以下内容摘自:微软官方
Access for Microsoft 365 Access 2021 Access 2019 Access 2016 Access 2013 ......
请考虑拆分多人通过一个网络共享的任何数据库。 拆分共享数据库有助于提高性能并减少数据库文件损坏的可能性。
拆分数据库后,可以决定移动后端数据库,或者使用不同的后端数据库。 可以使用链接表管理器更改使用的后端数据库。
注意:


  • 拆分数据库与存档数据库不同。 本主题不讨论如何存档数据。 通过定期将旧记录移动到其他数据库来存档数据,原因可能是数据库文件增长过快,达到文件大小限制,或者希望保持数据库文件较小,数据按时间段进行干净组织。 在某些情况下,可以通过拆分数据库来存档数据。 Access 数据。
  • 如果拆分 Web 数据库,该数据库中的任何 Web 表将不会移动到后端数据库,并且无法从生成的前端数据库访问。
本文内容


  • 概述
  • 准备工作
  • 拆分数据库
  • 分发前端数据库
  • 更改使用的后端数据库
概述

您拆分数据库时,将其重新组织到两个文件 — 包含模拟运算表的后端数据库和包含所有其他数据库对象(例如查询、窗体和报表)的前端数据库。 每个用户都通过使用前端数据库的本地副本与数据交互。
若要拆分数据库,请使用数据库拆分器向导。 拆分数据库后,必须将前端数据库分发给用户。
警告: 若要在数据库有多个最终用户时保护数据,建议不要共享包含指向 SharePoint 列表的链接的数据库副本。 如果链接到作为 SharePoint 列表的表,则任何恶意用户都有可能更改链接的目标,并可能修改 SharePoint 网站上的权限,因为链接表的连接信息未加密。
拆分数据库的好处

拆分数据库的好处包括:

  • 改进了性能    由于仅跨网络发送数据,因此数据库的性能通常会显著提高。 在未拆分的共享数据库中,数据库对象本身(表、查询、窗体、报表、宏和模块)将跨网络发送,而不只是数据。
  • 更高的可用性    由于仅跨网络发送数据,因此可以更快速地完成记录编辑等数据库事务,使数据更可供编辑。
  • 增强的安全性    如果将后端数据库存储在使用 NTFS 文件系统的计算机上,可以使用 NTFS 安全功能来帮助保护数据。 由于用户使用链接表访问后端数据库,因此入侵者不太可能通过窃取前端数据库或以授权用户身份获取对数据未经授权的访问。 如果不确定文件服务器使用什么文件系统,请咨询系统管理员。 如果对文件服务器具有管理员权限,可以运行 msinfo32 命令来自己确定文件系统。
    如何使用 msinfo32 检查文件系统?

  • 单击"开始"按钮,然后单击"运行"。
  • 在"运行"对话框中,键入msinfo32,然后单击"确定"。
  • "系统摘要"下,单击"组件"旁边的加
  • "组件"下,单击"存储"旁边的加号,然后单击"驱动器"。 该对话框在右侧面板中显示有关可用驱动器的信息。


  • 提高了可靠性    如果用户遇到问题并且数据库意外关闭,则任何数据库文件损坏通常仅限于用户打开的前端数据库的副本。 由于用户仅使用链接表访问后端数据库中的数据,因此后端数据库文件损坏的可能性要小得多。
  • 灵活的开发环境    由于每个用户使用前端数据库的本地副本,因此每个用户可以独立开发查询、窗体、报表和其他数据库对象,而不会影响其他用户。 同样,可以开发和分发新版本的前端数据库,而不会中断对后端数据库中存储的数据的访问。
开始之前

拆分数据库之前,请考虑以下事项:

  • 在拆分数据库之前,应始终备份数据库。 如果拆分数据库,然后决定不想拆分数据库,可以从备份副本还原原始数据库。
  • 拆分数据库可能需要很长时间。 应通知用户,以便他们拆分时不使用数据库。 如果用户在拆分数据库时更改数据,更改不会反映在后端数据库中。
    提示: 如果用户在拆分数据库时确实更改了数据,可以在完成后将新数据导入后端数据库。
  • 尽管拆分数据库是共享数据的一种方式,但使用该数据库的每个人都必须拥有与后端数据库的文件格式兼容的 Microsoft Office Access 版本。 例如,如果后端数据库文件使用 .accdb 文件格式,则用户无法使用 Access 2003 访问其数据。
  • 如果使用不再支持的功能,可能需要对后端数据库使用早期版本的 Access 文件格式。 例如,如果使用数据访问页 (数据) ;如果后端数据库采用支持 DAP 的早期版本文件格式,可以继续使用它们。 然后,可以将新文件格式用于前端数据库,以便用户可以访问新格式的好处。 请注意,无法使用 Access 2010 或更高版本更改数据访问页的数据。
拆分数据库


  • 在计算机上,创建要拆分的数据库的副本。 从本地硬盘上的数据库文件开始,而不是在网络共享上。 如果数据库文件当前从本地硬盘驱动器共享,可以保留它的位置。
  • 打开本地硬盘驱动器上的数据库副本。
  • 在"数据库工具"选项卡上的"移动数据"组中,单击"Access 数据库"。 数据库拆分器向导启动。
  • 单击"拆分数据库"。
  • "创建后端数据库 "对话框中,指定后端数据库文件的名称、文件类型和位置。
    注意:


  • 请考虑使用 Access 建议的名称。 它保留原始文件名,并指示数据库是后端数据库,只需在文件扩展名_be名称之前,将数据库插入名称中。
  • 除非某些用户将使用早期版本的 Access 访问数据,否则请勿更改文件类型。
  • 可以在文件名前面的"文件名"框中输入网络位置的路径。 例如,如果后端数据库的网络位置为\\server1\share1\,后端数据库的文件名为MyDB_be.accdb,可以在"文件名"框中输入\\server1\share1\MyDB_be.accdb。
  • 选择的位置必须可供将使用该数据库的每个人使用。 由于驱动器映射可能有所不同,因此, UNC 位置的路径,而不是使用映射的驱动器号。


  • 向导完成后,会显示一条确认消息。
数据库现已拆分。 前端数据库是使用 (开始创建的原始共享数据库) 的副本的文件,而后端数据库位于此过程的步骤 5 中指定的网络位置。
限制对前端数据库设计的更改

若要限制对分发的前端数据库的更改,请考虑将其保存为已编译的二进制文件 (.accde 文件) 。 已编译的二进制文件是一个数据库应用程序文件,该文件已使用已编译的所有 Visual Basic Access (VBA) 保存。 Access 已编译二进制文件中没有任何 VBA 源代码。 用户无法更改 .accde 文件中对象的设计。

  • 打开要另存为已编译二进制文件 (.accdb) 的前端数据库文件 (.accde) 。
  • 单击">另存为>将 ACCDE >另存为
  • 在"另存为"对话框中,浏览到要保存文件的文件夹,在"文件名"框中键入文件的名称,然后单击"保存"。
分发前端数据库

拆分数据库后,将前端数据库分发给用户,以便用户可以开始使用该数据库。
警告: 若要在数据库有多个最终用户时保护数据,建议不要共享包含指向 SharePoint 列表的链接的数据库副本。 如果链接到作为 SharePoint 列表的表,则任何恶意用户都有可能更改链接的目标,并可能修改 SharePoint 网站上的权限,因为链接表的连接信息未加密。
执行下列操作之一:

  • 向数据库用户发送电子邮件,并将前端数据库文件附加到邮件。 包含任何说明,方便用户立即开始使用前端数据库。
  • 将前端数据库文件保存到所有数据库用户可以访问的网络位置,然后向用户发送一封电子邮件,指定网络位置以及访问数据库所需的任何其他说明。
  • 使用可移动媒体(例如 CD-ROM 或 U 盘)分发前端数据库文件。 如果自行安装该文件,可以测试它以确保它正常工作。 如果用户必须安装该文件,你应该包含一个文档,说明他们安装该文件时必须执行哪些操作,以及遇到问题时要联系谁。
https://support.microsoft.com/zh-cn/office/%E6%8B%86%E5%88%86-access-%E6%95%B0%E6%8D%AE%E5%BA%93-3015ad18-a3a1-4e9c-a7f3-51b1d73498cc?ui=zh-cn&rs=zh-cn&ad=cn#
更改使用的后端数据库

可以使用链接表管理器移动后端数据库,或者使用不同的后端数据库。
如果要移动后端数据库,请首先将其副本复制到新位置,然后按照此过程操作。

  • 在"外部数据"选项卡上的"导入链接&,单击"链接表管理器"。
  • 在链接表管理器中,选择当前后端数据库中的表。
    提示: 如果尚未链接到任何其他数据库,请单击"全选"。
  • 选中"始终检查新位置"复选框,然后单击"确定"。
  • 浏览到新的后端数据库并选择该数据库。
四、如何在 Microsoft Access 中手动拆分 Access 数据库

高级:需要专家编码、互操作性和多用户技能。
本文适用于 Microsoft Access 数据库 (.mdb) 文件或 Microsoft Access 数据库 (.accdb) 文件。
摘要

出于各种原因,可以决定将数据库拆分为前端应用程序或后端应用程序。 后端数据库包含表,并存储在文件服务器上。 链接到后端表的前端数据库包含所有表单、查询、报表、宏和模块。 前端数据库分发给用户的工作站。
本文介绍如何手动拆分数据库,而不是使用数据库拆分程序实用工具。
更多信息

若要在 Microsoft Office Access 2003 和早期版本的 Access 中拆分数据库,请执行以下步骤:

  • 创建新的空白 Access 数据库。
  • 在“文件”菜单上,指向“获取外部数据”,然后单击“导入”。
  • 找到并选择要拆分的数据库。
  • “表” 选项卡上,单击 “全部选择”,然后单击 “确定”。
    请注意,Access 将所有表导入到新数据库(即后端数据库)中。
  • 将新的后端数据库存储在网络共享上,并确保所有用户都拥有共享的完整权限。
  • 创建第二个新的空白 Access 数据库。
  • 在“文件”菜单上,指向“获取外部数据”,然后单击“链接表”。
  • 选择刚刚创建的后端数据库。
  • “表” 选项卡上,单击 “全部选择 ”,然后单击 “确定”。
    请注意,Access 将后端数据库中的表链接到前端数据库。
  • 在“文件”菜单上,指向“获取外部数据”,然后单击“导入”。
  • 选择要拆分的原始数据库,然后单击“导入”。
  • 在“窗体”选项卡上,单击“全部选择”。 在除“表”选项卡之外的所有选项卡上重复此步骤。由于已链接到表,因此现在只需导入其余对象。
  • 选择除表以外的所有对象后,单击 “确定”。
    请注意,你现在已链接所有表并导入了剩余的对象。
若要在 Microsoft Office Access 2007 或更高版本中拆分数据库,请执行以下步骤:

  • 创建新的空白 Access 数据库。
  • 在“外部数据” 选项卡上,单击“导入”组中的 “访问”。
  • “获取外部数据 ”对话框中,单击 “浏览 ”以找到并选择要拆分的数据库,单击此项可选择 当前数据库中的导入表、查询、表单、报表、宏和模块。 复选框,然后单击 “确定”。
  • 在“导入对象”对话框中,单击 “表”选项卡上的“全部选择”,然后单击 “确定”。
    请注意,Access 将所有表导入到新数据库(即后端数据库)中。
  • 将新的后端数据库存储在网络共享上,并确保所有用户都拥有共享的完整权限。
  • 创建第二个新的空白 Access 数据库。
  • “外部数据”中,单击“导入”组中的 Access
  • “获取外部数据 ”对话框中,单击 “浏览 ”以选择创建的后端数据库,单击此项 可通过创建链接表来选择数据源的链接。 复选框,然后单击 “确定”。
  • 在“导入对象”对话框中,单击 “表”选项卡上的“全部选择”,然后单击 “确定”。
    请注意,Access 将后端数据库中的表链接到前端数据库。
  • “外部数据”中,单击“导入”组中的 Access
  • “获取外部数据 ”对话框中,单击 “浏览 ”以选择要拆分的原始数据库,单击以选择 当前数据库中的导入表、查询、表单、报表、宏和模块。 复选框,然后单击 “确定”。
  • 在“导入对象”对话框中,单击“窗体”选项卡上的“全部选择”,在除 “表” 选项卡之外的所有其他选项卡上重复此步骤,因为已链接到表。 现在只需导入其余对象,然后单击 “确定”。
    请注意,你现在已链接所有表并导入了剩余的对象。
备注
此数据库是前端数据库。 可以将此前端数据库分发到工作站,以便每个用户都有自己的前端数据库副本。
现在,你已成功拆分数据库,这将提高性能。 现在,当用户打开窗体时,表单会在其计算机上本地打开,不会通过网络发送。 网络中唯一出现的数据是链接表中的数据。
你可能想要拆分数据库的原因

以下是拆分数据库的典型原因:

  • 你正在与网络上的多个用户共享数据库。
  • 数据库中有多个开发人员,但未安装 Microsoft Visual Source Safe。
  • 你不希望用户能够对表进行设计更改。
拆分数据库的最常见原因是你与网络上的多个用户共享数据库。 如果只是将数据库存储在网络共享上,则当用户打开窗体、查询、宏、模块或报表时,必须通过网络将这些对象发送给使用该数据库的每个用户。 如果拆分数据库,则每个用户都有自己的窗体、查询、宏、模块和报表副本。 因此,必须跨网络发送的唯一数据是表中的数据。
注意 若要拆分数据库,还可以使用数据库拆分程序实用工具。
<hr/>也可关注我们 @小辣椒高效Office 一起交流学习Access
回复

使用道具 举报

0

主题

7

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2025-2-16 19:26:01 | 显示全部楼层
不错 支持一个了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|启明办公

Copyright © 2001-2013 Comsenz Inc.Template by Comsenz Inc.All Rights Reserved.

Powered by Discuz!X3.4

快速回复 返回顶部 返回列表