[英]Extra spaces in the end while retrieving CHAR values
我使用的是ibatis和oracle 10. jdbc驱动程序是oracle.jdbc.driver.OracleDriver。 当我从表中检索数据时,我发现添加了两个空格''。 比方说,ACTIVE_IND CHAR(1)列,检索到的数据为'A'。
请注意,所有CHAR字段都会发生这种情况。 而且,多余的空间永远都不是CHAR长度的两倍。 例如,如果有一列CHAR(14),则末尾没有多余的空格是28。
这仅在系统测试环境中发生。 在我们的本地桌面中,使用相同的ojdbc14.jar和相同的代码,我们没有得到任何额外的空格。
我认为系统测试环境中唯一的不同是数据库。 它与某些字符编码有关吗? 我们在数据库中有一些配置来改变吗?
这听起来很像一个字符编码问题。 你检查了吗
-Dfile.encoding=UTF8
或类似-Dfile.encoding=UTF8
进行配置-我强烈建议您这样做) 它无法从您提供的信息中完全确定出现了什么问题。 就列的编码而言,它受COLLATION SETTING的影响。 您可以查看以下链接以获取更多信息: http : //www.lessanvaezi.com/collation-in-oracle-using-nls_sort/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.