SQL Server 2008 64Bit 透過Link Server 的方法連結到SQL Server 2000 32Bit.無法正常使用
2011-12-13 15:16
711 查看
SQL Server 2008 64Bit 透過Link Server 的方法連結到SQL Server 2000 32Bit.無法正常使用
連結數據庫方法如下:
當在SQL Server 64位上執行
會出錯:
The stored procedure required to complete this operation could not be found on the server.Please contact your system administrator. (伺服器上找不到完成這項作業所需要的預存程序。請和系統管理員連絡)
Msg 7311, Level 16, State 2, Line 1 (訊息 7311,層級 16,狀態 2,行 1)
Cannot obtain the schema rowset "DBSCHEMA_TABLES_INFO" for OLE DB provider "SQLNCLI" for linked server "<LinkedServerName>".The provider supports the interface, but returns a failure code when it is used. (無法為連結伺服器 <LinkedServerName> 的 OLE DB 提供者 "SQLNCLI"
取得結構描述資料列集 "DBSCHEMA_TABLES_INFO"。提供者支援介面,但在使用時傳回失敗碼。)
原因:
64位和32位有一些系統的存儲過程不一致,有兼容性問題。
解決方法:
1.把SQL Server2000升級到sp3或sp4
2.把sp裡的instcat.sql找出來,在sql server2000裡手動執行。
3.問題解決
注:
我在測試過程中,把sp4裡的instcat.sql放在 sql server2000 sp3服務器裡執行後,問題同樣解決
micosoft裡的說明如下:
http://support.microsoft.com/kb/906954/
參考:
http://www.dotblogs.com.tw/jamesbi/archive/2010/11/19/19546.aspx
連結數據庫方法如下:
sp_addLinkedserver @server='linkedSQLDB',@srvproduct='SQLOLEDB',@provider='SQLOLEDB',@datasrc ='sqlserver1',@catalog=N'master' EXEC sp_addlinkedsrvlogin 'linkedSQLDB', --被访问的服务器别名 'false', NULL, 'sa', --帐号 'sa' --密码 sp_dropserver @server='linkedSQLDB' 移除
當在SQL Server 64位上執行
select * from linkedSQLDB.master.dbo.sysobjects
會出錯:
The stored procedure required to complete this operation could not be found on the server.Please contact your system administrator. (伺服器上找不到完成這項作業所需要的預存程序。請和系統管理員連絡)
Msg 7311, Level 16, State 2, Line 1 (訊息 7311,層級 16,狀態 2,行 1)
Cannot obtain the schema rowset "DBSCHEMA_TABLES_INFO" for OLE DB provider "SQLNCLI" for linked server "<LinkedServerName>".The provider supports the interface, but returns a failure code when it is used. (無法為連結伺服器 <LinkedServerName> 的 OLE DB 提供者 "SQLNCLI"
取得結構描述資料列集 "DBSCHEMA_TABLES_INFO"。提供者支援介面,但在使用時傳回失敗碼。)
原因:
64位和32位有一些系統的存儲過程不一致,有兼容性問題。
解決方法:
1.把SQL Server2000升級到sp3或sp4
2.把sp裡的instcat.sql找出來,在sql server2000裡手動執行。
3.問題解決
注:
我在測試過程中,把sp4裡的instcat.sql放在 sql server2000 sp3服務器裡執行後,問題同樣解決
micosoft裡的說明如下:
http://support.microsoft.com/kb/906954/
參考:
http://www.dotblogs.com.tw/jamesbi/archive/2010/11/19/19546.aspx
相关文章推荐
- SQL Server中使用Linkserver连接Oracle的方法
- SQL Server中使用Linkserver连接Oracle的方法
- 我在Windows 2008 上装先安装了Sql server 2008 ,这时sql 2008使用正常,当我再装SharePoint Server 2007后,sql server 2008就打不开了
- 使用JDBC连接SQL SERVER 2008的方法
- MS SQL Server 2000 游标的使用方法
- Team Foundation Server 2008使用SQLServer2008 SP1做存储层的部署方法
- SQL Server 2008通过LinkServer连接MySQL
- [转载 from SQL Server 2000 Help] SQL Server中汇总功能的使用GROUPING,ROLLUP和CUBE
- X64 SERVER2008配置32BIT ODBC的方法
- MSSQL 2008 LinkServer 使用
- SQL Server使用Linkserver连接Oracle
- MS sqlserver 2008数据库转换成2000版本的方法
- SQL Server 2000游标使用方法
- SQL Server 2008通过LinkServer连接MySQL
- 使用SQL Server 2008远程链接时SQL数据库不成功的解决方法
- SERVER2008IIS服务器不能正常使用(由于扩展配置问题而无法提供您请求的页面,如果该页面是脚本...)
- 使用JDBC连接SQL SERVER 2008的方法 SQL2008连接
- MS sqlserver 2008数据库转换成2000版本的方法
- MS SQL Server 2000 游标的使用方法
- Sql Server 2008 r2 在命令行下启用sa账户的解决方法 [Windows2008(64bit)]