数据库为oracle.
对数据库操作时用的spring的jdbctemplate.
设置PreparedStatementSetter()的value时,使用setString。
setString("english").运行正确。
当setString("中文")。就报如下错误:
ORA-01461: can bind a LONG value only for insert into a LONG column
原因大概如下:
1、插入到字符串长度大于字段字节。
2、插入到表中的记录的某个字段数据的实际长度大于字段个字节(如果是UTF-8,则是1333个字节);或者是插入的记录中有两个或两个以上长度大于字段字节的字符串。
3、数据库与客户端的JDBC驱动不匹配。
谢谢你呀,确实是JDBC的原因