ms-access – 从MS Access 2007保存到MS SQL服务器的ODBC连接的密码

前端之家收集整理的这篇文章主要介绍了ms-access – 从MS Access 2007保存到MS SQL服务器的ODBC连接的密码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我负责将旧的Access 2007项目迁移到MS sql Server 2008 Express.第一阶段是将所有数据从MS Access数据库移动到sql服务器,同时在客户端保留Access表单和报表.

因此,现在移动数据,创建sql服务器用户(仅用于访问该特定数据库),并通过ODBC连接将表链接到Access数据库.但是,应该以某种方式解决一个麻烦:Access在打开Access数据库时会定期询问用户密码.

服务器PC和客户端PC上的用户登录到本地计算机,即他们的用户未在独立域服务器上进行验证.

我看到有几种方法可以解决这个问题:

> 1)配置集成安全模型,以便用户可以登录,由Windows登录自动授权(即使用“可信连接”).鉴于服务器PC无法从客户端PC识别用户,我不确定如何做到这一点.如果我现在尝试这样做,我会收到用户从不受信任的域连接的错误.
> 2)在客户端存储sql Server用户密码.不过,我不确定这是可能的.我知道在一些配置文件中保留密码,或者在应用程序配置中存储模糊处理应该被视为降低安全性,但这对于给定的设置是可接受的.
> 3)或许还有其他一些方法如何将sql服务器表链接到Access?

解决方法

最好的解决方案显然是使用Windows安全性.

如果这不合适,这里有一个可能的替代技巧,利用Access在程序关闭之前记住所有打开的连接的事实:

>复制其中一个表的连接字符串
>创建一个passthru查询“ptqConnect”并在其中输入任何快速sql语句,如SELECT 1
>将连接字符串粘贴到PTQ Connect属性中,并确保添加PWD = something;在里面.
>在您的应用程序的启动过程中,请确保您调用该PTQ.像DCount(“*”,“ptqConnect”)这样的东西都可以.

而已.由于Access会关闭打开的连接,直到您关闭它,即使关闭数据库,您的其他表现在也可以毫不费力地打开,即使链接表中没有存储密码连接字符串.
如果您不想公开包含PWD的连接字符串,您也可以从VBA启动连接并通过提供MDE或仅保护代码的密码来隐藏代码.

您可以找到此行为的解释here.

猜你在找的MsSQL相关文章