MySQLでのAUTO_INCREMENT列の操作
MySQLでAUTO_INCREMENT列を操作する方法を理解しましょう-
AUTO_INCREMENT属性は、新しい行の一意のIDを生成するために使用されます。このステートメントがどのように機能するかを見てみましょう。その前に、以下のクエリを検討してください-
クエリ
CREATE TABLE tableName ( id MEDIUMINT NOT NULL AUTO_INCREMENT, name CHAR(30) NOT NULL, PRIMARY KEY (id) ); INSERT INTO tableName (name) VALUES (‘val1’),('val2'),('val3'), ('val4'); SELECT * FROM tableName;
出力
+----+---------+ | id | name | +----+---------+ | 1 | val1 | | 2 | val2 | | 3 | val3 | | 4 | val4 | +----+---------+
上記のクエリでは、「AUTO_INCREMENT」列に値が指定されていないため、MySQLは一連の番号を「id」列に自動的に割り当てました。数列が0から始まるように、値0を明示的に割り当てることもできます。これは、「NO AUTOVALUEONZERO」SQLモードが有効になっていない場合にのみ実行できます。
列が「NOTNULL」として宣言されている場合、その列にNULLを割り当てて、一連の数字を生成することができます。
AUTO_INCREMENT列に値が挿入されると、列はその値に設定され、シーケンスもリセットされるため、最大の列値から順番に値が自動的に生成されます。
既存の「AUTO_INCREMENT」列を更新して、「AUTO_INCREMENT」シーケンスもリセットできます。最新の自動生成された「AUTO_INCREMENT;値は、SQLの「LAST_INSERT_ID()」関数を使用するか、C API関数である「mysql_insert_id()」を使用して取得できます。
AUTO_INCREMENT属性を使用するときは、次のルールに従う必要があります-
-
すべてのテーブルには、データ型が通常整数であるAUTO_INCREMENT列が1つだけあります。
-
AUTO_INCREMENT列にインデックスを付ける必要があります。これは、PRIMARYKEYまたはUNIQUEインデックスのいずれかである可能性があることを意味します。
-
AUTO_INCREMENT列には、NOTNULL制約が必要です。
-
AUTO_INCREMENT属性が列に設定されている場合、MySQLは自動的にNOTNULL制約を列に追加します。
-
PHP / MySQLでTimeを使用していますか?
PHP / MySQLで時間を処理するには、strtotime()関数を使用できます。同じ-のPHPコードは次のとおりです。 $timeValue='8:55 PM'; $changeTimeFormat = date('H:i:s', strtotime($timeValue)); echo("The change Format in 24 Hours="); echo($changeTimeFormat); PHPコードのスナップショットは次のとおりです- これが出力です。 これが元の時刻を取得するためのMySQLクエリ
-
Javaを使用してMySQLテーブルの列数をカウントする
これには、ResultSetMetaDataを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentFirstName varchar(20), -> StudentLastName varchar(20) -> ); Query OK, 0 r