我试图使用pass through insert在MS SQL Server 2008和Oracle 11g服务器之间的数据库链接中插入数据:
insert into openquery(ORACLE,'select varchar2_1,varchar2_2, number1 from table1')
select varchar_1, varchar_2, integer_1 from mssql_table;
当我尝试执行此操作时,我得到并且错误地说数据违反了架构。
Error:
The OLE DB provider "MSDAORA" for linked server "ORACLE" could not INSERT INTO table "[MSDAORA]" because of column "VARCHAR2_1". The data value violated the schema for the column.
我搜索了谷歌和stackoverflow,但似乎无法找到解决此问题的具体方法。 fyi:我无法更改oracle DB中的模式。
非常感谢任何帮助。
答案 0 :(得分:0)
检查varchar_2中数据的长度。数据是否适合oracle列varchar2_1?