数据库是oracle 10g 字段大小是是 varchar(30),数据库编码为utf-8
我在一个函数中 return 了一个 str.substring(0,30);
以为就会满足 oracle 中的varchar(30)
结果出错了,出错的字符串为:
CZHP稨AINWBAADHMRN6FCDICOOEFSD1我在这里想问一下,这是怎么会事?java JDBC里 statement.execute(sqlstr),
sqlstr中的字符串(如: insert into table ('stra','strb','strc'))输往数据库时是什么编码?如果要在这里加上一个varchar(30)的限制,大家都怎么加?
我在一个函数中 return 了一个 str.substring(0,30);
以为就会满足 oracle 中的varchar(30)
结果出错了,出错的字符串为:
CZHP稨AINWBAADHMRN6FCDICOOEFSD1我在这里想问一下,这是怎么会事?java JDBC里 statement.execute(sqlstr),
sqlstr中的字符串(如: insert into table ('stra','strb','strc'))输往数据库时是什么编码?如果要在这里加上一个varchar(30)的限制,大家都怎么加?
那这么说,如果数据库是UTF-8的,我应该测试String 的UTF8长度?