MySQL 连接字符串中加入 nullCatalogMeansCurrent = true 的含义

发布时间 2023-11-29 14:55:15作者: 快乐随行

nullCatalogMeansCurrent 的含义:

nullCatalogMeansCurrent = true    # 在指定的数据库中查找需要的表

nullCatalogMeansCurrent = false   # 在服务器全部数据库中查找需要的表

不同 MySQL 驱动 nullCatalogMeansCurrent 默认情况:

  • 从mysql-connector-java 5.x 版本起,nullCatalogMeansCurrent属性由原来的默认true改为了false;
  • 6.0之后 nullCatalogMeansCurrent 默认又改为true;
  • 8.0后默认又改为false。

所以8.0以后版本在数据库连接的时候: 加上配置【nullCatalogMeansCurrent=true】以避免找不到表的情况。

jdbc:mysql://192.168.1.4:3308/database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true