【发布时间】:2013-04-22 15:13:06
【问题描述】:
我正在将字符串写入具有 TEXT 类型字段的数据库中。这意味着我可以将65,535 bytes 写入该字段。之后我会得到一个 SQL 异常:
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'DETAILS' at row 1
所以我现在的问题是,如何检查我的字符串,然后如何在正确的位置剪切字符串,它仍然适合数据库。
我知道这也取决于编码。我刚刚看到 MySQL 架构使用“latin1 - 默认集合”字符集。
【问题讨论】:
-
简答:String.getBytes(
)。看stackoverflow.com/a/4385653/1919228 -
好的 - 这给了我 latin1 (ISO-8859-1) 中字符串的大小。但是我现在如何在这个位置拆分字符串呢?
-
MySQL STRICT 模式无法更改...我需要在 Java 中执行此操作