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)
-
日付列を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値
-
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_