如何在mysql 8的jdbc连接字符串中设置sql模式?

ercv8c1e  于 2021-06-24  发布在  Mysql
关注(0)|答案(3)|浏览(561)

我最近将mysql示例从5.7升级到了8.0。我使用jdbc和一个如下所示的连接字符串连接到我的旧示例:

jdbc:mysql://[host:port]/[database]/?sessionVariables=sql_mode=''

升级到8.0后,会导致此错误

com.mysql.cj.exceptions.WrongArgumentException: Malformed database URL, failed to parse the connection string near '='')'.

如何在mysql 8的jdbc连接字符串中设置sql模式?

t5fffqht

t5fffqht1#

在jdbc连接字符串中为mysql 8.0尝试以下操作:

jdbc:mysql://[host:port]/[database]/?sessionVariables=&&sql_mode=''

例如

jdbc:mysql://localhost:3306/dbName?sessionVariables=&&sql_mode=''

对于jdbc连接字符串中的mysql 7.0:

jdbc:mysql://[host:port]/[database]/?sessionVariables=sql_mode=''

例如

jdbc:mysql://localhost:3306/dbName?sessionVariables=sql_mode=''
nhaq1z21

nhaq1z212#

这似乎是mysql connector/j中的一个bug。我提出了一个错误报告:
https://bugs.mysql.com/bug.php?id=92485

6yoyoihd

6yoyoihd3#

我想这可能是因为sql模式中没有任何东西。

相关问题