我有一个运行SQL2005的Windows Server 2003实例,其中包含使用MediaCatalogDB OLE DB提供程序的链接服务器。
我们正在将此服务器(大部分)迁移到运行Windows Server 2003但使用64位SQL2008 R2的服务器。但是,它没有MediaCatalogDB OLE DB提供程序。
有谁知道我可以在哪里获得64位SQL 2008的这个提供程序?或者另一种解决方法?
我对我们要链接的系统一无所知(这是第三方提供的黑盒子)。
谢谢!
答案 0 :(得分:0)
事实证明,使用SQL Server Native Client 10.0时出现的错误报告了一条有用的错误消息:“提供程序支持该接口,但在使用时会返回失败代码。”
似乎SQL 2000 SP4(我的源系统是)不支持64位链接服务器在没有先运行脚本(光盘上的脚本)的情况下查询它,以提供适合64位服务器查询的目录: http://support.microsoft.com/default.aspx?scid=kb;en-us;906954
此处的另一篇博客文章描述了一种解决方法,如果这不起作用: http://sqlblog.com/blogs/roman_rehak/archive/2009/05/10/issue-with-64-bit-sql-server-using-sql-2000-linked-server.aspx
在我的情况下,源系统是关闭的黑盒子,所以我需要考虑另一个解决方案。 (可能菊花链式链接服务器,所以新服务器可以调用旧服务器可以调用源服务器?)
答案 1 :(得分:0)
Insert results of a stored procedure into a temporary table提供了答案 - 使用OPENQUERY选择临时表,因为它不会向源系统询问可用对象的目录。