ODBC DSN的命名实例
问题描述:
我试图连接到SQL Server从C 2008 R2 ++应用程序按照我刚才的问题:C++ ODBC SQL Server 2008 ConnectionODBC DSN的命名实例
我在C++ DSN是
SQLDriverConnectW(dbc, NULL, L"DRIVER={SQL Server};SERVER=(local)\DB1;DATABASE=master;UID=sa;PWD=password;", SQL_NTS, NULL, 0, NULL, SQL_DRIVER_COMPLETE);
所以我的DSN实际上是
DRIVER={SQL Server};SERVER=(local)\DB1;DATABASE=master;UID=sa;PWD=password;
这是行不通的。我可以连接到尚未使用命名实例的服务器,但在我的主机上,我有单独的实例需要连接。
用什么正确的DSN来连接到本地机器上的SQL Sever 2008 R2命名实例?
答
ODBC DSN的命名管道需要像这样
DRIVER={SQL Server};SERVER=np:(local)\DB1;DATABASE=master;UID=sa;PWD=password;
通过增加对np:
特定的,这是一个命名管道,而不是一个tcp:
连接。