ホームページ  >  記事  >  データベース  >  MySQLで初期値と自動インクリメントを設定するにはどうすればよいですか?

MySQLで初期値と自動インクリメントを設定するにはどうすればよいですか?

WBOY
WBOY転載
2023-09-07 19:37:021407ブラウズ

MySQLで初期値と自動インクリメントを設定するにはどうすればよいですか?

AUTO_INCRMENT 属性は、新しい行の一意の識別子を生成するために使用されます。列が「NOT NULL」と宣言されている場合、列に NULL を割り当てて一連の数値を生成できます。

値が AUTO_INCREMENT カラムに挿入されると、カラムはそのカラム値に設定され、シーケンスもリセットされるため、最大のカラム値の連続した範囲内で値が自動的に生成されます。

既存の「AUTO_INCRMENT」列を更新できます。これにより、「AUTO_INCRMENT」シーケンスもリセットされます。最新の自動的に生成された「AUTO_INCRMENT」。値は、SQL の「LAST_INSERT_ID()」関数または C API 関数「mysql_insert_id()」を使用して取得できます。

これらの関数は接続固有です。つまり、その戻り値は、挿入操作を実行する他の接続の影響を受けません。 「AUTO_INCRMENT」列に使用できる最小の整数データ型。ユーザーが必要とする最大のシーケンス値を収容できる十分な大きさです。

AUTO_INCREMENT ルール

AUTO_INCRMENT 属性を使用する場合は、次のルールに従う必要があります。

  • 各テーブルには、AUTO_INCRMENT 列が 1 つだけあり、そのデータが含まれます。タイプは 通常は整数です。

  • AUTO_INCREMENT 列にはインデックスを付ける必要があります。つまり、それは可能です PRIMARY KEY または UNIQUE インデックス。

  • AUTO_INCRMENT 列には NOT NULL 制約が必要です。

  • AUTO_INCREMENT がカラムに設定されている場合、MySQL は自動的に追加します。 列自体に対する NOT NULL 制約。

id ​​列がテーブルに追加されていない場合は、次のステートメントを使用できます。

ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);

id ​​列が既に存在する場合は、次のステートメントを使用できます。 command-

ALTER TABLE tableName AUTO_INCREMENT=specificValue;

ここで、tableName は、「AUTO_INCRMENT」列を設定する必要があるテーブルの名前を指します。 「specificValue」は、ユーザー指定の「AUTO_INCRMENT」値から始まる整数を指します。

以上がMySQLで初期値と自動インクリメントを設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。