nho*_*yti 4 sql-server odbc ado asp-classic
我在ASP页面遇到问题.这是一个登录页面,在允许访问主页面之前检查用户对数据库的凭据.我创建了一个调试器页面来找出错误详细信息,这是错误消息:
Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.
Run Code Online (Sandbox Code Playgroud)
这是我登录网站时在Web服务器上遇到的错误消息.这里奇怪的是在我的机器(桌面)本地测试页面时一切正常(即使使用IIS和MSSQL服务器).我在部署和测试页面时也使用相同的连接字符串.
请帮助,任何建议或意见将被大大接受.
谢谢,Nhoyti
小智 7
连接到SQL Server的典型ODBC连接字符串可能如下所示.
DRIVER={SQL Server};SERVER=127.0.0.1\SQLEXPRESS;DATABASE=dbname;
UID=userid;PWD=password
Run Code Online (Sandbox Code Playgroud)
转到控制面板 - >管理工具 - >数据源(ODBC)
尝试使用连接字符串中提供的信息创建用户DSN,并测试从生产服务器到SQL Server的ODBC连接.
问题可能在于服务器本身的ODBC配置 .换句话说,连接字符串[到ODBC源]是可以的(因为在其他服务器上测试过),但它引用了未在此特定服务器上配置的源.
要解决此问题,请打开ODBC数据源管理器(通常是"管理"工具菜单中的快捷方式之一),并检查是否确实有一个源(通常是"系统DSN"),其名称与连接中的名称相同串.这样的源可能是不合适的或不正确的配置.
除了性能方面的考虑,可以考虑在连接字符串级别使用更直接的数据提供程序(如MS SQL数据提供程序或Microsoft.Jet.OLEDB); 这避免了服务器上的额外配置点(ODBC配置面板)(但是这可能需要使用两个不同的连接字符串,一个用于测试环境,一个用于生产环境......)