ほとんどすべてのデータベーステーブルには、識別子として機能する一意の列があり、新しいレコードごとにデータベースエンジンによってauto_incrementされる値があります。自動増分値はデータベースのテーブルのスキーマに格納されており、通常は変更できません。次の自動増分シーケンス番号はデータベースによって自動的に計算され、レコードと一緒にテーブルに挿入されます。
このチュートリアルでは、auto_increment値をMySQLまたはMariaDBで必要な数に変更する方法を示します。たとえば、自動インクリメント値を1ではなく100の大きい数値から開始するには(新しいテーブルのデフォルト)。
方法1:テーブルを変更する
次のクエリを実行します:
ALTER TABLE tbl_name AUTO_INCREMENT = x;
tbl_nameを置き換えます 実際のテーブル名とx 7などの好きな番号を使用します。
注「ALTERTABLE」クエリを実行すると、一部のMySQLバージョンでテーブル全体が再構築される可能性があるため、大規模なデータベースには注意して使用してください。方法2:自動インクリメント値を挿入する
次のクエリを実行します:
BEGIN WORK; INSERT INTO tbl_name (ID) VALUES (x); ROLLBACK;
tbl_nameを置き換えます 実際のテーブル名、 ID auto_increment属性を持つ実際の列名、および x 7などの好きな番号を使用します。
上記のクエリは、MySQLまたはMariaDBデータベースをだまして、強制されたauto_increment値を使用します。この値は、次のトランザクションで使用する現在および最新のauto_incrementシーケンスとして記憶されます。開始してロールバックし、トランザクションがデータベースにまったく挿入されていないことを確認します。上記の「INSERTINTO」クエリを機能させるには、他の必須の列と値も追加する必要があることに注意してください。