1

データベースの移行に flyway プラグインを使用していますが、移行の 1 つに次の sql があります。

-- Inserts sequential number into `id`
ALTER TABLE `DEVICES` MODIFY `id` BIGINT(20) AUTO_INCREMENT;
-- we don't need the auto_increment anymore
ALTER TABLE `DEVICES` MODIFY `id` BIGINT(20) UNIQUE;
-- This simulates a sequence. Starts at max(id); next id will be max(id)+1.
CREATE TABLE `DEVICES_ID_SEQUENCE` (id BIGINT(20) NOT NULL);
INSERT INTO `DEVICES_ID_SEQUENCE` (SELECT max(id) from `DEVICES`);

ただし、フライウェイは既存の行のテーブル DEVICES の列 ID を埋めません。ただし、この文を手動で実行すると、既存の行がいっぱいになります。

これにはいくつかの回避策がありますか?

4

1 に答える 1

0

Flyway は、ステートメントを変換せずにそのまま実行します。

正しいインスタンスに対して接続していることを確認してください。また、ログをチェックして、障害が発生していないかどうかを確認します。

于 2013-07-09T11:25:19.890 に答える