MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLにAUTOINCREMENTを追加してALTERテーブル?


MySQLにAUTOINCREMENTを追加するには、ALTERコマンドを使用できます。

ALTER TABLE yourTableName change yourColumName yourColumnName dataType AUTO_INCREMENT PRIMARY KEY;

上記の概念を理解するには、列を持つテーブルを作成します。テーブルを作成しましょう-

mysql> create table AlterTableToAddAutoIncrement
   -> (
   -> StudentId int
   -> );
Query OK, 0 rows affected (0.57 sec)

上記の構文を実装して、AUTOINCREMENTで「StudentId」を変更します。クエリは次のとおりです-

mysql> alter table AlterTableToAddAutoIncrement change StudentId StudentId int AUTO_INCREMENT Primary  key;
Query OK, 0 rows affected (1.93 sec)
Records: 0 Duplicates: 0 Warnings: 0

列名「StudentId」にAUTO_INCREMENTを追加しました。これで、値を指定せずにレコードを挿入することで、自動インクリメントが機能しているかどうかを確認できます。

クエリは次のとおりです-

mysql> insert into AlterTableToAddAutoIncrement values();
Query OK, 1 row affected (0.16 sec)
mysql> insert into AlterTableToAddAutoIncrement values();
Query OK, 1 row affected (0.16 sec)
mysql> insert into AlterTableToAddAutoIncrement values();
Query OK, 1 row affected (0.33 sec)

これで、1、2、3、4などの順序で表示されるすべてのレコードを表示できます。クエリは次のとおりです-

mysql> select *from AlterTableToAddAutoIncrement;

以下は出力です-

+-----------+
| StudentId |
+-----------+
|         1 |
|         2 |
|         3 |
+-----------+
3 rows in set (0.00 sec)

  1. 日付列をNULLにするMySQLクエリ?

    日付列をNULLにするには、ALTER TABLEとMODIFYを使用して、日付をNULLに設定します。以下は構文です- alter table yourTableName modify column yourColumnName date NULL; まず、テーブルを作成しましょう。ここでは、列をNOTNULL-として設定しました。 mysql> create table DemoTable (    ShippingDate date NOT NULL ); Query OK, 0 rows affected (0.78 sec) ここで、上記の表にNULL値

  2. MySQLのALTERTABLEに一意の制約を追加する

    まずテーブルを作成しましょう- mysql> create table DemoTable1811      (      FirstName varchar(20),      LastName varchar(20)      ); Query OK, 0 rows affected (0.00 sec) インデックスを追加するためのクエリは次のとおりです mysql> alter table DemoTable1811 ADD UNIQUE unique_