如何使用VB链接和ODBC表到MS Access数据库,而无需连接到服务器?

时间:2014-04-23 16:10:57

标签: sql-server ms-access odbc

我有一个VB过程,它更改了Access 2002数据库中所有360个链接表的连接字符串。如果我在本地网络中使用SQL服务器运行此过程,则运行大约30秒。问题是我必须在Internet的某个地方使用SQL服务器。在这种情况下,程序运行约5分钟。 问题是 - 如何阻止Access连接到服务器以检查我重新连接的每个表?

另一个问题(可能更正确)。 每次我给他们一个新版本的数据库时,我需要在每个用户的计算机上运行重新连接程序,以便将用户的登录名和密码保存到每个链接表中。也许有其他方法来设置ODBC连接的用户名和密码?

1 个答案:

答案 0 :(得分:1)

链接表不会突然决定连接某些服务器。因此,这里推荐的方法是将表链接一次(并保留密码+用户名OUT的链接)。

然后在启动时,您所做的只是执行一个登录命令,然后所有表都是即时可用的,并且无需重新链接或重新刷新连接字符串即可使用。同样适用于任何密码查询等。

因此,链接表的存在不会在启动时使用,并且您可以拥有3或300个链接表并且启动Access将不会导致连接发生“除非”您解码以执行类似重新链接的操作。

底线: 你没有也不应该在启动时重新链接 您不需要在表链接中包含用户名+密码。

启动时的一次登录将导致Access“缓存”用户名+密码,这将用于所有当前现有表链接。这样做的好处是当用户退出applctaion然后没有密码等存储在链接表中。

因此,在表重新链接期间,您无法阻止访问连接到服务器,因为它必须执行此操作。

然而,如果不是ZERO有理由在每次启动时重新链接?为什么要重新启动重启?

  

每次我给他们一个新版本的数据库时,我需要在每台用户的计算机上运行该重新连接程序,

为什么不在将数据库分发给该用户之前将其链接到您的计算机上?在所有连接都通过互联网完成后 - 您应该能够从开发计算机链接到该数据库系统。假设你不能,那么好吧,也许你可能被迫进行一次重新链接。尝试使用缓存登录重新链接 - 它可能会运行得更快,但无论如何它只会再次进行一次重新链接。

  

将用户的登录名和密码保存到每个链接表中。

否否这不是必需的也不是推荐的。如果用户将鼠标悬停在链接表上,那么如果您包含用户名+密码,则它处于平面视图中。

您不希望在每个链接表中包含用户名+密码。如何执行SINGLE登录并将该登录用于所有表(没有重新链接)和所有表EVEN没有保存用户ID +密码在此处列出:

电源提示:提高数据库连接的安全性

http://blogs.office.com/b/microsoft-access/archive/2011/04/08/power-tip-improve-the-security-of-database-connections.aspx