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