java 连mysql出现 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown character set: 'utf8mb4' 错误,求大神指教如何解决?
你的sql中编码有问题,检查下你的程序
看看是不是这个问题
把dialect由 org.hibernate.dialect.MySQLDialect 改成 org.hibernate.dialect.MySQL5InnoDBDialect 就ok
MySQL SyntaxError Exception:Unknown character set:'utf8mb4'的问题
今天拿别人的项目部署调试,出现如下问题
www.2cto.com
Java代码
org.hibernate.exception.SQLGrammarException: Cannot open connection
...
root cause
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown character set: 'utf8mb4'
google吧,有说创建数据库就要指定字符集的
Java代码
CREATE DATABASE test1
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
也有说hibernate加编码的
Java代码
jdbc:mysql://localhost:3306/ssh_test
或者
UTF8
也有说mysql6 要新的mysql-connector-j-5.1.13版本才行的, 这都用到5.1.22都不行
最后把dialect由 org.hibernate.dialect.MySQLDialect 改成 org.hibernate.dialect.MySQL5InnoDBDialect 就ok
我以前发生的例子:是由于Mysql驱动版本引起的:
mysql
mysql-connector-java
5.1.18
改为:
mysql
mysql-connector-java
5.1.6
不清楚这个Mysql的驱动为什么版本太新了还不可以。去查看了一下服务器的Mysql版本。不知对你是否有帮助?
指定数据库连接url时带上编码:jdbc.url=jdbc:mysql://xx.xx.xx.xx:3306/inv?useUnicode=true&characterEncoding=utf-8;
如果管用,给分,最近很穷;
数据库的编码有问题吧
mysql版本问题,utf8mb4应该要求mysql的版本要在5.5之上吧