Rothes/Prism-Bukkit

[BUG] 列超长了

Closed this issue · 3 comments

[23:08:42 WARN]: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x9B\xA1 3...' for column 'data' at row 1
[23:08:42 WARN]: at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
[23:08:42 WARN]: at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
[23:08:42 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
[23:08:42 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1098)
[23:08:42 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1046)
[23:08:42 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1371)
[23:08:42 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1031)
[23:08:42 WARN]: at Prism 2.2.0-CN-11.jar//com.botsko.prism.libs.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
[23:08:42 WARN]: at Prism 2.2.0-CN-11.jar//com.botsko.prism.libs.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
[23:08:42 WARN]: at Prism 2.2.0-CN-11.jar//me.botsko.prism.database.sql.SqlInsertBuilder.insertActionIntoDatabase(SqlInsertBuilder.java:88)
[23:08:42 WARN]: at Prism 2.2.0-CN-11.jar//me.botsko.prism.actionlibs.RecordingTask.insertActionsIntoDatabase(RecordingTask.java:118)
[23:08:42 WARN]: at Prism 2.2.0-CN-11.jar//me.botsko.prism.actionlibs.RecordingTask.save(RecordingTask.java:46)
[23:08:42 WARN]: at Prism 2.2.0-CN-11.jar//me.botsko.prism.actionlibs.RecordingTask.run(RecordingTask.java:153)
[23:08:42 WARN]: at org.bukkit.craftbukkit.v1_18_R1.scheduler.CraftTask.run(CraftTask.java:101)
[23:08:42 WARN]: at org.bukkit.craftbukkit.v1_18_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57)
[23:08:42 WARN]: at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22)
[23:08:42 WARN]: at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[23:08:42 WARN]: at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[23:08:42 WARN]: at java.base/java.lang.Thread.run(Thread.java:833)

相似问题:
AddstarMC#254

能否给出相关数据库信息?

相似问题: AddstarMC#254

能否给出相关数据库信息?

mysql5.7

如同上面提到的相关链接, 有可能是数据库编码不允许写入某个字符. 可以考虑更改编码为utf8mb4, (也许还需要在 hikari.properties 中手动定义jdbcUrl), 但这可能造成大量的性能损失.
但是 Prism 的原作者最近回到了 Prism 的活跃开发中, 且正在对数据库结构进行重写, 之后的版本会有所改善.
(https://github.com/darkhelmet-gaming/PrismRefracted/tree/v4)