MyBatis Generator Table configuration with catalog null, schema null, and table 表名 did not resolve to any tables


springboot配置MyBatis Generator,連接MySQL數據庫實現自動生成代碼時,所有的表都提示

Table configuration with catalog null, schema null, and table 表名 did not resolve to any tables

項目種沒有自動生成相關代碼。

因為之前的項目都是連接的Oracle數據庫,對比之前的generatorConfig.xml反復查找原因,沒有發現xml文件配置錯誤。

后來發現是因為MySQL對數據庫表名大小寫敏感,我的MySQL數據庫是小寫的表名,我把表名大寫了而且用雙引號引起來了,並沒有給我做大小寫轉換。

Oracle數據庫表名默認是不區分大小寫的,但是不知道為什么MySQL默認就區分了,總之被坑了。

查找資料:

tableName(必要):要生成對象的表名;
注意:大小寫敏感問題。正常情況下,MBG會自動的去識別數據庫標識符的大小寫敏感度,在一般情況下,MBG會
根據設置的schema,catalog或tablename去查詢數據表,按照下面的流程:
1,如果schema,catalog或tablename中有空格,那么設置的是什么格式,就精確的使用指定的大小寫格式去查詢;
2,否則,如果數據庫的標識符使用大寫的,那么MBG自動把表名變成大寫再查找;
3,否則,如果數據庫的標識符使用小寫的,那么MBG自動把表名變成小寫再查找;
4,否則,使用指定的大小寫格式查詢;
另外的,如果在創建表的時候,使用的""把數據庫對象規定大小寫,就算數據庫標識符是使用的大寫,在這種情況下也會使用給定的大小寫來創建表名;
這個時候,請設置delimitIdentifiers="true"即可保留大小寫格式;


免責聲明!

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



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