DSN测试正常,但尝试使用DSN到SQL Server 2005时登录失败

The*_*eek 5 sql-server asp.net odbc

我正在托管环境中编写一个小型ASP.NET应用程序(这意味着我不拥有服务器)。

使用托管服务提供商的Web工具,我创建了一个DSN,用于指定驱动程序,服务器,UID,PWD和数据库。当我测试连接时,它测试得很好。

但是,当我用以下代码加载网页时:

OdbcConnection DB =新的OdbcConnection(“ DSN = MyDSNName”);
DB.Open();

我收到错误消息:用户''ERROR [28000] [Microsoft] [ODBC SQL Server驱动程序] [SQL Server]登录失败。

我知道我使用了正确的DSN名称,因为当我更改为“ DSN = NonExistentDSN”时,我会收到另一个错误。

我不理解为什么测试时登录有效,但在代码中使用登录时却无法正常运行。由于我不拥有服务器,因此我无法使用一些常见的故障排除工具,但我希望社区提供任何反馈。

Yan*_*ton 5

也许 DSN 不保留密码。您是否尝试过提供登录凭据?

OdbcConnection DB = new OdbcConnection("DSN=MyDSNName;UID=login;PWD=password;");
DB.Open();
Run Code Online (Sandbox Code Playgroud)

  • 呵呵。那行得通。有趣的。我想知道为什么。当然,这完全违背了目的……我选择使用 DSN 的全部原因是这样我就不必在页面代码中编写 UID 和 PWD 了。哦,好吧,至少现在可以了。 (2认同)