在我的工作中,我们仍然使用 Access 数据库。
我的老板告诉我,他创建了表格来编辑表格中的记录,因为如果多人打开数据库,保存时可能会出现问题。我不知道这个的有效性,但它不是重点。
我的问题:
如果我用 C# 或其他一些编程语言创建一个应用程序来更新记录,除了我不正确地编程之外,是否有任何错误会对数据库产生负面影响?文件的存在.laccdb
会导致出现任何问题吗?
在我的工作中,我们仍然使用 Access 数据库。
我的老板告诉我,他创建了表格来编辑表格中的记录,因为如果多人打开数据库,保存时可能会出现问题。我不知道这个的有效性,但它不是重点。
我的问题:
如果我用 C# 或其他一些编程语言创建一个应用程序来更新记录,除了我不正确地编程之外,是否有任何错误会对数据库产生负面影响?文件的存在.laccdb
会导致出现任何问题吗?
是否有任何问题可能对数据库产生负面影响?
ACE/Jet (Access) 数据库是共享文件数据库,这意味着每个客户端都使用自己的数据库引擎副本来更新数据库文件。出于这个原因,网络中断更可能导致共享文件数据库的损坏,而不是客户端-服务器数据库。
如果您的网络连接是可靠的,那么由网络故障引起的数据库损坏的风险非常低。如果您的网络客户端容易出现连接中断和其他故障(弱/断断续续的 WiFi 连接就是一个例子),那么共享文件数据库可能不是最佳选择。
.laccdb 文件的存在会导致出现任何问题吗?
不,因为.laccdb
锁定文件对于管理对数据库的多用户访问至关重要。事实上,没有.laccdb
文件(由网络文件夹上的文件夹权限不正确引起)可能会导致问题。
我的老板告诉我……如果多人打开数据库,保存时可能会出现问题。
您的老板可能指的是多个并发用户直接.accdb
在 Access 本身中打开共享文件的同一副本的做法。这可能会导致问题,这就是为什么必须将多用户 Access 数据库拆分为:
仅包含数据表并位于共享文件夹中的通用后端文件,以及
前端文件的单独副本(包含查询、表单、报告),每个用户一份,驻留在他们自己的本地硬盘上。各个前端文件使用链接表来访问共享后端文件中的数据表。