我已在新服务器上安装了 MS SQL Server Express 实例。我有一个 Web 应用程序,其中包含一些用 VBScript 编写的旧 ASP.NET 代码,使用另一个工作正常的数据库 (SQL Server)。
每次尝试连接都会出现相同的错误:
Microsoft OLE DB Provider for SQL Server error '80004005' [DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.
代码是:
Set udb = Server.CreateObject("ADODB.Connection")
'SQLEXPRESS ENVIRONMENT
udb.Open("Provider=SQLOLEDB; Data Source=SEHAN5134AS1\SQLEXPRESS,1433; Initial Catalog=testDB; User ID=myUser; Password=sEcret;")
'PRODUCTION ENVIRONMENT
'udb.Open("Provider=SQLOLEDB; Data Source=manifolds-avalon.db.teliasonera.net,1433; Initial Catalog=smallworldweb_user-data; User ID=myUser; Password=sEcret;")
我已经建立了 ODBC 连接来验证 Web 服务器是否能够使用 SQL 服务器连接到服务器并且工作正常。我尝试授予 myUser 对数据库的任何类型的权限。我可以使用其他程序连接到数据库(允许使用 tcpip 和命名管道、远程连接等)
我尝试添加
"Server=SEHAN5134AS1.db.teliasonera.net; Network=DBMSSOCN;"
到连接字符串。我尝试在“数据源”字符串中使用完整的服务器名称。但现在我不知道如何解决这个问题。有什么建议吗?
编辑 我尝试按照 Dan Guzman 的建议通过 powershell 进行连接,结果如下所示,其中包含设置 ODBC 连接的结果。所有结果均来自同一网络服务器。
最佳答案
试试这个代码
udb.Open("Provider=SQLOLEDB; Data Source=SEHAN5134AS1\SQLEXPRESS; Initial Catalog=testDB; User ID=myUser; Password=sEcret;")
关于sql-server - ADODB 连接无法连接到 sql server Express,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47035865/