0

cfwheels (coldfusion orm フレームワーク) を使用しています。

最近、一部のデータを以前のホストから新しいホストに移動しました。今、テーブルに挿入しようとしていますが、次のエラー メッセージが表示されます。

データベースを調べたところ、ID 13651 のレコードが既に存在するようです。したがって、問題はmysqlが正しい自動インクリメント値を生成することにあると思います。

4

3 に答える 3

4

Auto_Increment 値が破損しているか、その列の最大値に設定されていないようです。一括挿入により可能です。

したがって、ソリューションごとに、最大 PK 値 + 1 を新しい AUTO_INCREMENT 値として設定します。このテーブルにレコードを挿入すると、正しくインクリメントされた次のレコードが自動的に選択されます。

ALTER.TABLE tablename AUTO_INCREMENT = value
于 2012-06-26T07:51:10.047 に答える
0

主キーの自動インクリメント属性がオンになっている場合は、手動で挿入しないでください。挿入クエリからその主キー部分を削除します(ORMフレームワークの好みに応じた構文は何でも)。

于 2012-06-26T07:27:52.723 に答える
0

そのレコードの残りのデータと、挿入しようとしているデータは同じですか? ORMにその値を置き換えるように指示する必要がある場合は?

于 2012-06-26T07:22:44.790 に答える