gpt4 book ai didi

liquibase - liquibase中如何设置自增主键字段的起始值

转载 作者:行者123 更新时间:2023-12-02 22:52:25 27 4
gpt4 key购买 nike

我有一个要求,比如我的 mysql 表的主键以“0”开头。我应该如何在 liquibase xml 中指定它?

我在创建表时尝试了 startWith 参数,但没有成功。

    <column autoIncrement="true" name="id" type="BIGINT(20) UNSIGNED" startWith="0">
<constraints primaryKey="true"/>
</column>

感谢任何帮助。

最佳答案

liquibase 生成的 SQL 似乎正确地包含基于您的 startWith 的 AUTO_INCRMENT=0 表选项。如果运行liquibase updateSql

,您可以看到生成的SQL

直接运行 SQL,MySQL 本身似乎不接受默认值零。如果我使用相同的 createTable 但使用不同的 startWith (例如 100),它可以正常工作,但将其设置为零会使其实际上以 1 开头。

也许设置 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 标志将使其正常工作,但由于 mysql 使用零作为值,意味着“使用下一个自动增量字段”,因此最好如果可以的话,请从 1 开始,以避免混淆。

关于liquibase - liquibase中如何设置自增主键字段的起始值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26242927/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com