Error querying database. Cause: java.sql.SQLSyntaxErrorException: Table ‘actspring.act_ge_property‘

Error querying database. Cause: java.sql.SQLSyntaxErrorException: Table 'actspring.act_ge_property'

在学习activiti流程引擎时,将activiti与springboot整合,可以自动部署流程流程,但是我的一直报错说:Error querying database. Cause: java.sql.SQLSyntaxErrorException: Table 'actspring.act_ge_property',这时候重启大法也不好用,我又重新看了一遍教程,没有什么区别,后来百度该错误,找到一条帖子说是因为MySQL版本的问题,MySQL版本8.xxx以后当上会出现该问题,我一看我的pom.xml文件中没有写版本号,看到引入的包默认为8.xxx版本,改成了5.1.6版本,该错误解决了。

原因

因为mysql使用schema标识库名而不是catalog,因此mysql会扫描所有的库来找表,如果其他库中有相同名称的表,activiti就以为找到了,本质上这个表在当前数据库中并不存在。
设置nullCatalogMeansCurrent=true,表示mysql默认当前数据库操作,在mysql-connector-java 5.xxx该参数默认为true,在6.xxx以上默认为false,因此需要设置nullCatalogMeansCurrent=true。

解决办法

配置mysql连接时加上:nullCatalogMeansCurrent=true
即:useUnicode=true&characterEncoding=utf8 &nullCatalogMeansCurrent=true&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC

参考自该博主的博客

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值