我正在托管环境中编写一个小型ASP.NET应用程序(意味着我不拥有服务器)。
使用托管服务提供商的webtools,我创建了一个DSN,用于指定驱动程序,服务器,UID,PWD和数据库。当我测试连接时,它测试得很好。
但是,当我使用代码加载我的网页时:
OdbcConnection DB = new OdbcConnection("DSN=MyDSNName"); DB.Open();
我收到错误:ERROR [28000] [Microsoft] [ODBC SQL Server驱动程序] [SQL Server]用户''登录失败。
我知道我使用了正确的DSN名称,因为当我更改为“DSN = NonExistentDSN”时,我收到了不同的错误。
我不明白为什么登录在我测试时会起作用,但在我在代码中使用时却不行。由于我不拥有服务器,因此我无法使用一些常用的故障排除工具,但我很感激社区提供的任何反馈。
答案 0 :(得分:4)
也许DSN不保留密码。您是否尝试过提供登录凭据?
OdbcConnection DB = new OdbcConnection("DSN=MyDSNName;UID=login;PWD=password;");
DB.Open();