sql server 2012 链接服务器不能链接sql server 2000的解决方案 ,

本数据源来自 https://www.kafan.cn/edu/922556.html  目的为了备忘

 

把原来的sql server 2005直接装成了2012,然后在建立链接服务器链接一台sql server 2000的服务器时,报错信息大概是“SQL Server Native Client 11.0 不支持链接SQL Server 2000 及更早版本”,但是在SQL Server2012中连接其他SQL Server数据库时可以使用以下代码:

exec sp_addlinkedserver 'ITSV', '', 'SQLOLEDB', 'serverip'
exec sp_addlinkedsrvlogin 'ITSV', 'false ',null, 'sa', 'password'

但是在SQL Server2000时的建立连接成功,但是在使用时会出现以下错误提示:“访问接口MSDASQL 返回了消息 ODBC驱动程序管理器未发现数据源名称并且未指定默认” 

根据提示并查阅微软 SQL Server Native Client 的支持策略 可知,SQL Server2012默认自带的是Native Client 11.0,并且不再对SQL Server 2000或更早的版本支持。我们可以通过下载并安装Native Client10.5 或者Native Client10,并在连接时指定驱动解决。

SQL Server Native Client 10 下载  后面附下载地址

 

安装完成后使用以下代码进行连接。

EXEC sp_addlinkedserver
@server='ITSV', --'ITSV'链接服务器名称
@srvproduct = 'sqlserver',
@provider = 'MSDASQL',
@datasrc = NULL,
@location = null,
@provstr = 'DRIVER={SQL Server Native Client 10.0};SERVER=serverip;',  --serverip 需要链接服务器地址
@catalog = NULL
go
EXEC sp_addlinkedsrvlogin
@rmtsrvname='ITSV',  --'ITSV'链接服务器名称 同上一步
@useself='false',
@rmtuser='sa',--'sa'用户名
@rmtpassword='password'; --'password'  密码
go

以上代码中指定使用Native Client 10.0为驱动,使用方式完全与本地相同。
SQL Server Native Client 11.0 支持与 SQL Server 2005、SQL Server 2008、SQL Server 2008 R2、SQL Server 2012 和 Windows Azure SQL Database 的连接。
支持的操作系统版本
下表列出了支持 SQL Server Native Client 的操作系统。
SQL Server Native Client 版本
支持的操作系统
SQL Server Native Client (SQL Server 2005)
Microsoft Windows 2000 Service Pack 4 或更高版本
Microsoft Windows Server 2003 或更高版本
Microsoft Windows XP Service Pack 1 或更高版本
Microsoft Windows Vista(需要 SQL Server Service Pack 2 或更高版本)
Microsoft Windows Server 2008(需要 SQL Server Service Pack 2 或更高版本)
SQL Server Native Client 10.0 (SQL Server 2008)
Microsoft Windows Server 2003 Service Pack 2 或更高版本
Microsoft Windows XP Service Pack 2 或更高版本
Microsoft Windows Vista
Microsoft Windows Server 2008
SQL Server Native Client 10.5 (SQL Server 2008 R2)
Microsoft Windows Server 2003 Service Pack 2 或更高版本
Microsoft Windows XP Service Pack 2 或更高版本
Microsoft Windows Vista
Microsoft Windows Server 2008
Microsoft Windows 7
SQL Server Native Client 11.0 (SQL Server 2012)
Microsoft Windows Vista
Microsoft Windows Server 2008
Microsoft Windows 7
Microsoft Windows 8
Microsoft Windows Server 2012

 

在安装 SQL Server 2008 或 SQL Server 工具时,将同时安装 Microsoft SQL Server Native Client 10.0。如果计算机上还安装了 SQL Server Native Client 的 SQL Server 2005 版本,则 SQL Server Native Client 10.0 将与早期版本并行安装。

Microsoft SQL Server Native Client 10.0下载://www.jb51.net/database/95927.html  。

SQL Server Native Client 文件(sqlncli10.dll、sqlnclir10.rll 和 s10ch_sqlncli.chm)将安装到以下位置:

%SYSTEMROOT%\system32\

注意:

SQL Server Native Client OLE DB 访问接口和 SQL Server Native Client ODBC 驱动程序的所有相应注册表设置都将在安装过程中完成。

SQL Server Native Client 头文件和库文件(sqlncli.h 和 sqlncli10.lib)安装在以下位置:

%PROGRAMFILES%\Microsoft SQL Server\100\SDK

除了作为 SQL Server 安装过程的一部分安装 SQL Server Native Client 以外,还可以在 SQL Server 安装磁盘的以下位置找到名为 sqlncli.msi 的可再分发安装程序:

%CD%\Setup\

您 可以通过 sqlncli.msi 分发 SQL Server Native Client。在您部署某一应用程序时,可能需要安装 SQL Server Native Client。安装多个包(对于用户而言就像是一次安装)的一种方法就是使用链接器和引导程序技术。有关详细信息,请参阅 Authoring a Custom Bootstrapper Package for Visual Studio 2005(为 Visual Studio 2005 创作自定义引导程序包)和添加自定义系统必备。

sqlncli.msi 的 x64 和 Itanium 版本也会安装 SQL Server Native Client 的 32 位版。如果您的应用程序所针对的目标平台并非其开发时所使用的平台,则可以从 Microsoft 下载中心下载针对 x64、Itanium 和 x86 的 sqlncli.msi 版本。

在调用 sqlncli.msi 时,默认情况下只会安装客户端组件。这些客户端组件即为那些支持运行使用 SQL Server Native Client 开发的应用程序的文件。若还要安装 SDK 组件,请在命令行中指定 ADDLOCAL=All。例如:

msiexec /i sqlncli.msi ADDLOCAL=ALL APPGUID={0CC618CE-F36A-415E-84B4-FB1BFF6967E1}

卸载 SQL Server Native Client

因 为诸如 SQL Server 服务器和 SQL Server 工具之类的应用程序依赖于 SQL Server Native Client,所以只有在卸载所有依赖应用程序之后才能卸载 SQL Server Native Client。若要向用户提供应用程序依赖于 SQL Server Native Client 的警告,请在 MSI 中使用 APPGUID 安装选项,如下所示:

msiexec /i sqlncli.msi APPGUID={0CC618CE-F36A-415E-84B4-FB1BFF6967E1}

传递给 APPGUID 的值是您的特定产品代码。当使用 Microsoft Installer 捆绑应用程序安装程序时,必须创建产品代码。                          

posted @ 2019-08-21 10:29  心韵  阅读(2352)  评论(0编辑  收藏  举报