链接服务器 为列提供的元数据不一致

问题描述:

链接服务器 "SRV_Lnk" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 为列提供的元数据不一致。对象 "Table"" 的列 "ColumnName" (编译时序号为 14)在编译时有 50 的 "LENGTH",但在运行时有 100。

分析:

  数据库从2005升级到2008,推测sql server 版本升级内部机制发生变更。

解决方法:

    使用OpenQuery方式,下面是视图写法

SELECT  A.* 
  FROM  OPENQUERY(TREPO, 'SELECT ID, Name FROM Products') A
 INNER 
  JOIN  ORDERED_PRODUCTS B
    ON  A.ID = B.ID

参考:http://stackoverflow.com/questions/12285228/how-to-join-linked-server-table-and-sql-server-table-while-using-openquery

作者:Cary Liu


本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,
且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/caryliu/p/3529354.html