把原来的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时的建立连接成功,但是在使用时会出现以下错误提示:
根据提示并查阅微软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',
@srvproduct = 'sqlserver',
@provider = 'MSDASQL',
@datasrc = NULL,
@location = null,
@provstr = 'DRIVER={SQL Server Native Client 10.0};SERVER=serverip;',
@catalog = NULL
go
EXEC sp_addlinkedsrvlogin
@rmtsrvname='ITSV',
@useself='false',
@rmtuser='sa',
@rmtpassword='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