![如何通过 MS Excel 到 MS Excel/Access 的只读数据连接防止 MS Access 文件被锁定而无法编辑?](https://linux22.com/image/1569635/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20MS%20Excel%20%E5%88%B0%20MS%20Excel%2FAccess%20%E7%9A%84%E5%8F%AA%E8%AF%BB%E6%95%B0%E6%8D%AE%E8%BF%9E%E6%8E%A5%E9%98%B2%E6%AD%A2%20MS%20Access%20%E6%96%87%E4%BB%B6%E8%A2%AB%E9%94%81%E5%AE%9A%E8%80%8C%E6%97%A0%E6%B3%95%E7%BC%96%E8%BE%91%EF%BC%9F.png)
我担心的是,我使用 MS Excel 与多个 MS Access/MS Excel 文件建立数据连接,但其中不涉及写入。数据连接的唯一用途是提取数据。但是,想要在数据库上写入的用户却无法写入,因为建立数据连接将锁定 MS Access/MS Excel 文件以进行编辑。那么,有没有办法建立只读数据连接,同时允许其他人编辑和保存文件?
答案1
根据您设置数据链接的方式,您应该能够指定以下数据链接属性:
该设置Share Deny None
将允许其他人以完整模式打开 Access 数据库文件ReadWrite
。
如果您已经有想要修改的连接,可以使用以下步骤添加Share Deny None
到连接字符串:
- 打开“现有连接”并选择要修改的连接。
- 单击“属性”并切换到“定义”选项卡。
- 在“连接字符串”框中,您需要添加/修改以下值:
Mode=Share Deny None;
例子:
Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;
Data Source=E:\Documents\Test.accdb;Mode=Share Deny None;Extended Properties="";
...
答案2
你所要求的是一个矛盾的说法。
最好的做法是保留文件的两个副本,一个是只读的,另一个是可更新的,并在未使用时定期更新只读副本。