用户的一个系统从IQ 12.7升级到IQ 15时,原先正常的LOAD操作在15下报"Right truncation of string data "错后操作失败。
原因是数据库选项"STRING_RTRUNCATION"在12.7的缺省值为'OFF',而在IQ 15中变为了'ON'。下面是对于这个数据库选项的解释(摘自IQ 12.7参考手册)
STRING_RTRUNCATION 数据库选项:
Determines whether an error is raised when an LOAD、INSERT or UPDATE truncates a CHAR or VARCHAR string.
When STRING_TRUNCATION is OFF, the
exception is not raised and the character string is silently truncated.
If the option is ON and an error is raised, a ROLLBACK occurs.
可以使用如下查询获得这个数据库选项在12.7和15中的缺省设置:
select * from sysoptiondefaults where option_name like '%STRING_R%'
使用下面的查询可以看到这个数据库选项在12.7和15中的当前设置:
select * from sysoptions where "option" like '%STRING_R%'
解决这个问题的方法就是在IQ 15中使用如下命令把STRING_RTRUNCATION设为OFF:
set option public.STRING_RTRUNCATION='OFF'
阅读(5285) | 评论(1) | 转发(0) |