activiti 初始化表 問題:Error querying database. Cause: java.sql.SQLSyntaxErrorException: Table 'activiti_dev.act_ge_property' doesn't exist


在學習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
即:

properties:
useUnicode=true&characterEncoding=utf8 &nullCatalogMeansCurrent=true&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC
xml: ?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC

  


原文鏈接:https://blog.csdn.net/buling_bulink/article/details/116145017


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM