Spring 如何在UTF-8字符集中使用liquibase创建数据库

Spring 如何在UTF-8字符集中使用liquibase创建数据库,spring,utf-8,jhipster,liquibase,Spring,Utf 8,Jhipster,Liquibase,与Jhipster(Spring)和Liquibase合作,如果我的数据库不存在,我希望Liquibase创建一个UTF-8格式的数据库 下面是我的“application-dev.yml”配置文件的一个示例 datasource: type: com.zaxxer.hikari.HikariDataSource url: jdbc:mysql://127.0.0.1:3306/scalink?useUnicode=true&characterEncoding=utf8&

与Jhipster(Spring)和Liquibase合作,如果我的数据库不存在,我希望Liquibase创建一个UTF-8格式的数据库

下面是我的“application-dev.yml”配置文件的一个示例

datasource:
    type: com.zaxxer.hikari.HikariDataSource
    url: jdbc:mysql://127.0.0.1:3306/scalink?useUnicode=true&characterEncoding=utf8&useSSL=false&createDatabaseIfNotExist=true
    name:
    username: root
    password:
    hikari:
        data-source-properties:
            cachePrepStmts: true
            prepStmtCacheSize: 250
            prepStmtCacheSqlLimit: 2048
            useServerPrepStmts: true
我现在的问题是:我错在哪里

谢谢大家

Alex

根据这一点,创建数据库不是Liquibase的任务。试图使用参数createDatabaseIfNotExist=true在数据源url上创建数据库只是JDBC驱动程序提供的一个选项。不幸的是,以这种方式创建数据库的选项有限。此外,报告没有提供更多信息。如果您仍然希望以您提到的方式创建数据库,那么可以通过JDBC url创建数据库,然后在config/liquibase/changelog/00000000000000\u initial\u schema.xml中添加一个变更集,该变更集将模式更改为utf8

<changeSet id="0" author="jhipster">
    <sql>ALTER SCHEMA `jhipstersampleapplication`  DEFAULT CHARACTER SET utf8;
    </sql>
</changeSet>

ALTER SCHEMA`jhipstersampleapplication`默认字符集utf8;
根据这一点,创建数据库不是Liquibase的任务。试图使用参数createDatabaseIfNotExist=true在数据源url上创建数据库只是JDBC驱动程序提供的一个选项。不幸的是,以这种方式创建数据库的选项有限。此外,报告没有提供更多信息。如果您仍然希望以您提到的方式创建数据库,那么可以通过JDBC url创建数据库,然后在config/liquibase/changelog/00000000000000\u initial\u schema.xml中添加一个变更集,该变更集将模式更改为utf8

<changeSet id="0" author="jhipster">
    <sql>ALTER SCHEMA `jhipstersampleapplication`  DEFAULT CHARACTER SET utf8;
    </sql>
</changeSet>

ALTER SCHEMA`jhipstersampleapplication`默认字符集utf8;

我认为这必须在Liquibase和Jhipster创建对象之前在MySQL workbench中创建数据库时完成。我认为这必须在Liquibase和Jhipster创建对象之前在MySQL workbench中创建数据库时完成。