1

我正在为我的数据库使用 MySql。我已经找到了如何在创建表时设置列的起始自动增量值,但我需要知道如何为现有列设置新的起始值。liquibase 脚本看起来像什么?

4

2 回答 2

1

MySQL 语法非常简单:

ALTER TABLE mytable AUTO_INCREMENT = val ;

(请注意,这实际上是一个表属性,而不是列属性。表中只能有一个列声明为 AUTO_INCREMENT。)

SQL Server 或 Oracle 不支持此语法;除了 SEQUENCE 对象和 TRIGGER 之外,Oracle 甚至没有“auto_increment”列的概念。SQL Server 将其称为 IDENTITY 属性。所以我不知道这个语句将如何用“liquibase”语法表示,除了指定这个语句是本机 MySQL 语法。

于 2012-07-30T21:12:30.767 回答
0

您可以使用addAutoIncrement( http://www.liquibase.org/documentation/changes/add_auto_increment.html ) 更改现有的 AUTO_INCREMENT 列。

不要忘记columnDataTypeaddAutoIncrement.

我昨天在我们的项目中使用了它并且它工作(对于 MySQL)。

于 2015-04-29T12:00:14.400 回答