Sql server 2008 VB6连接字符串没有';t在具有MS-SQL 2005和2008的计算机上工作

Sql server 2008 VB6连接字符串没有';t在具有MS-SQL 2005和2008的计算机上工作,sql-server-2008,vb6,Sql Server 2008,Vb6,我有一个VB6应用程序,它使用以下字符串建立ADODB连接: "Provider=SQLOLEDB;Data Source=MYPC;Initial Catalog=MYDB;User ID=sa;Password=***" 我最近将数据库从MS-SQL Server 2005迁移到2008。客户端可以毫无问题地连接。但是在我的机器上,我同时拥有SQL 2005和2008,我无法连接。我的开发计算机上的错误是:[DBNETLIB][ConnectionOpen(Connect())。]SQL

我有一个VB6应用程序,它使用以下字符串建立ADODB连接:

"Provider=SQLOLEDB;Data Source=MYPC;Initial Catalog=MYDB;User ID=sa;Password=***"
我最近将数据库从MS-SQL Server 2005迁移到2008。客户端可以毫无问题地连接。但是在我的机器上,我同时拥有SQL 2005和2008,我无法连接。我的开发计算机上的错误是:[DBNETLIB][ConnectionOpen(Connect())。]SQL Server不存在或访问被拒绝。我仍然可以连接到MYPC\SQLEXPRESS,它是SQL 2005实例

如果我将连接字符串设置为以下值,则它将在我的机器上工作:

"Provider=SQLNCLI10;Server=MYPC;Database=MYDB;Uid=sa;Pwd=***"

使用第一个连接字符串在我的机器上运行连接需要做什么?我假设需要对数据库配置做些什么才能使其正常工作。SQL2005实例是MYPC\SQLEXPRESS,而SQL2008实例是MYPC。

我通过在我的机器上安装另一个SQL Server 2008实例解决了这个问题。我将实例命名为NEWSQL,现在我可以使用第一个连接字符串使用MYPC\NEWSQL进行连接


我仍然想知道我是否以及如何使用第一个连接字符串连接到未命名实例。

客户端的连接是否可以使用第二个连接字符串?当您使用第一个连接字符串时,您的机器上会出现什么样的错误?我没有在用户的机器上安装SQL2008本机客户端,因此我假定第二个连接字符串将无法工作。我想保留第一个字符串,这样我就可以让客户端PC保持原样,除非这样做有重大缺点。我的开发计算机上的错误是:[DBNETLIB][ConnectionOpen(Connect())。]SQL Server不存在或访问被拒绝。