Dee*_*pak 5 sql-server oracle linked-server
我试图MSSqlserver使用链接服务器将数据从 Oracle 提取到数据库。
select * from [LINK_NAME]..SCHEMA.TABLE;
Run Code Online (Sandbox Code Playgroud)
但它因以下错误而失败:
链接服务器“LINK_NAME”的 OLE DB 提供程序“OraOLEDB.Oracle”为列提供了不一致的元数据。对象 ""SCHEMA"."TABLE"" 的列 "COLUMN_NAME"(编译时序数为 6)在编译时为 100,在运行时为 200。
我还需要在运行时在 where 条件下传递参数。我发现 OPENQUERY 作为解决方案,但它在运行时不支持参数。
我找到了解决方案:
由于数据库列类型不匹配而出现错误。
ORACLE使用数据类型,但在SQLSERVERNVARCHAR中则使用。VARCHAR
由于NVARCHAR 的大小是VARCHAR的两倍,这就是它显示大小不匹配错误的原因。
将数据类型更改为相同的数据类型对我有用。
| 归档时间: |
|
| 查看次数: |
7074 次 |
| 最近记录: |