0

我真的很难过,我不确定是否有人至少可以指出我正确的方向?

我有一个 MS Access 报告应用程序。它有一些本地表,但主要依赖于它链接到的 SQL Server 2005 数据库中的表。它通过系统 DSN 链接到 SQL DB。

我已经构建了一个函数,可以在运行任何报告之前确认所需的表已链接,并且一切正常。每次系统需要连接到 SQL DB 以刷新链接表时,我都会存储一个连接字符串。但是,当用户 FIRST 运行应用程序时,会弹出一个 SQL 身份验证对话框,要求用户输入所请求数据库的用户名和密码。

无论我做什么,我似乎都无法抑制这一点。系统 DSN 是并且必须为 SQL 身份验证设置,但是如果我可以取消此初始对话框,我的代码将负责继续进行身份验证。

谁能帮我这个?我难住了。

非常感谢您的所有建议!

达拉斯

4

4 回答 4

2

呃,您使用 SQL 身份验证而不是 Windows 身份验证有什么重要原因吗?后者使得完全没有必要在连接字符串中存储任何用户信息。

于 2009-05-01T21:08:01.953 回答
1

您是否尝试将 SQL 用户名和密码放在连接字符串中?

User Id=myUsername;Password=myPassword;
于 2009-04-30T17:07:08.357 回答
0

如果您的任何代码在表检查器运行之前尝试访问这些表(甚至是隐藏表单上的下拉菜单),它将尝试并进行身份验证。

您的验证码本身可能就是罪魁祸首。许多人试图通过检查他们是否可以检索记录来进行验证。相反,请验证连接字符串是否与架构定义中的一样:CurrentDb.TableDefs("MyTable").Connect

于 2009-04-30T18:19:46.327 回答
0

呃,如果你要报告 SQL Server 数据……你为什么要使用 Access?

SQL Server 带有一个非常出色的报告系统,称为“SQL Server Reporting Services”。

一旦你掌握了它的窍门,SQL Server 比 MS Access 更容易使用!

直接针对 SQL 更简单,对吧?

在 Reporting Services 中,有几种方法可以阻止 SQL 身份验证提示。

于 2011-01-16T17:19:20.817 回答