当前使用版本(必填,否则不予处理)

mybatisplus 3.3.1

该问题是如何引起的?(确定最新版也有问题再提!!!)

https://github.com/baomidou/mybatis-plus/blob/fc839ddae3433c35dcb410138db8749f7c4fff21/mybatis-plus-generator/src/main/java/com/baomidou/mybatisplus/generator/config/builder/ConfigBuilder.java#L605

} else if (DbType.H2 == dbType) {
                tableName = tableName.toUpperCase(); // 这里
                try (PreparedStatement pkQueryStmt = connection.prepareStatement(String.format(H2Query.PK_QUERY_SQL, tableName));
                     ResultSet pkResults = pkQueryStmt.executeQuery()) {
                    while (pkResults.next()) {
                        String primaryKey = pkResults.getString(dbQuery.fieldKey());
                        if (Boolean.parseBoolean(primaryKey)) {
                            h2PkColumns.add(pkResults.getString(dbQuery.fieldName()));
                        }
                    }
                }
                tableFieldsSql = String.format(tableFieldsSql, tableName);
            } else {
                tableFieldsSql = String.format(tableFieldsSql, tableName);
            }

重现步骤(如果有就写完整)

user.ddl.sql

drop table if exists user;

create table user
(
    id           bigint(20) auto_increment
        comment '主键',
    name         varchar(50)  not null
        comment '用户名',
    age          smallint(4)  not null
        comment '年龄',
    address      varchar(500) null
        comment '住址',
    birthday     datetime     null
        comment '生日',
    gender       tinyint(1)   null
        comment '0是女 1是男',
    is_delete    tinyint(1)            default 0
        comment '0正常 1已删',
    primary key (id)
) engine = innodb comment '用户表'
  default charset = utf8;

需要改成 user -> USER ,才能获取表结构信息。 建议不需要 tableName.toUpperCase();

报错信息

无。

Comment From: qmdx

https://github.com/baomidou/mybatis-plus/commit/210994fd53cab8c8d714b471c0aaa54f9e1381af