0
我正在使用MySql 5.5.37。我有一個InnoDB表具有以下列什麼是MySql文本列的最大字符長度?
| MESSAGE | text | YES | | NULL | |
我注意到我們的日誌中的錯誤(我們使用Hibernate V5),類似於
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'MESSAGE' at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4094) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2734) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2155) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2458) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2375) [mysql-connector-java-5.1.22-bin.jar:]
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2359) [mysql-connector-java-5.1.22-bin.jar:]
at org.jboss.jca.adapters.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:115)
at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:493)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204) [hibernate-core-5.1.5.Final.jar:5.1.5.Final]
我的問題是,什麼是最大長度(以字符)的文本列?
你有沒有試圖尋找答案?重複問題標題與您的問題幾乎完全相同。 – Barmar
最大長度是64K _bytes_,它介於16K和64K之間'utf8mb4' _characters_。切換到「MEDIUMTEXT」以增加限制。 –