LZ做测试在详细一点!应该了解到具体是到哪一个字段出错了!
确实有可能是nvarchar的max长度或者是什么类型的问题哦!
如果你能继续还原错误就好了,试试在SqlServer中在新建一张跟contact结构一样的表,用于重现错误。
然后一个字段一个字段的查询(如果查询所有的时候有提示具体是那一列就不用这么干了),看看是哪个字段的问题。
如果是Description nvarchar(max) 那么就找一个Description内容最短的记录做条件查询看看是否继续报错!然后在找最长的。
在不报错的时候最好将查询的结果放到Oracle中的表里面。看看Oracle给你转换成了什么类型!---------------来源网络----------------
通过透明网关传送过来的字符类型列会被加大为3倍
譬如原来的字符列长度是 VARCHAR2(100)
到了ORACLE中就会变为 VARCHAR2(300)
因此如果原来的字符串是2000 到了ORACLE中就变为了6000 超过了VARCHAR2类型的最大支持长度
原文地址:http://www.itpub.net/forum.php?mod=viewthread&tid=1713920
---------------------------------------
确实有可能是nvarchar的max长度或者是什么类型的问题哦!
如果你能继续还原错误就好了,试试在SqlServer中在新建一张跟contact结构一样的表,用于重现错误。
然后一个字段一个字段的查询(如果查询所有的时候有提示具体是那一列就不用这么干了),看看是哪个字段的问题。
如果是Description nvarchar(max) 那么就找一个Description内容最短的记录做条件查询看看是否继续报错!然后在找最长的。
在不报错的时候最好将查询的结果放到Oracle中的表里面。看看Oracle给你转换成了什么类型!---------------来源网络----------------
通过透明网关传送过来的字符类型列会被加大为3倍
譬如原来的字符列长度是 VARCHAR2(100)
到了ORACLE中就会变为 VARCHAR2(300)
因此如果原来的字符串是2000 到了ORACLE中就变为了6000 超过了VARCHAR2类型的最大支持长度
原文地址:http://www.itpub.net/forum.php?mod=viewthread&tid=1713920
---------------------------------------
解决方案 »
- oracle 多个表共用序列问题
- 一张表中的date字段是TIMESTAMP(6)类型,它的值形式是:29-9月 -11 03.52.49.428827 下午 如何写查询条件
- 如果通过一个键盘来控制机房里的两台服务器?切换键是什么?
- CSV出力问题
- 使用带恢复目录的RMAN相关配置步骤的疑问
- show sga;后的Fixed Size加上Variable Size,为什么不等于Total System Global Area?
- 存储过程出错问题
- oracle问题急需解决!在线等!
- ORACLE
- 问题:一次更新好多行的????
- oracle的where条件里有不包括的条件吗?
- not exists在这个语句中怎么理解?
可不能盲目相信呢,具体的得做测试!
我这边的环境Oracle连接SqlServer是通过配置SqlServer的ODBC数据源来实现的!
create table test_tbl as select * from SQLSERVERTABLE;过来的时候数据长度是没有变化的!
具体的还得请LZ做个测试,给个结果看看才能知道!