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

PRIMARY KEY制約を既存のMySQLテーブルのフィールドに適用するにはどうすればよいですか?


ALTER TABLEステートメントを使用して、PRIMARYKEY制約を既存のMySQLテーブルの列に適用できます。

構文
ALTER TABLE table_name MODIFY colum_name datatype PRIMARY KEY;
                 OR
ALTER TABLE table_name ADD PRIMARY KEY (colum_name); 

'Player'という名前の次のテーブルがあり、PRIMARYKEY制約を列'ID'に追加したい場合は、ALTERTABLEコマンドを使用して次のように実行できます-

>
mysql> DESCRIBE Player;

+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    |  int(11)    | YES  |     | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+

2 rows in set (0.04 sec)
mysql> ALTER TABLE Player MODIFY ID INT PRIMARY KEY;
Query OK, 0 rows affected (0.22 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESCRIBE Player;

+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    |  int(11)    | NO   | PRI | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+

2 rows in set (0.04 sec) 

上記の結果セットから、MySQLがフィールド化された「ID」にPRIMARYKEY制約を追加したことがわかります。次のクエリでもPRIMARYKEY制約を追加できます-

 Alter table Player ADD PRIMARY KEY(ID);

  1. MySQLにブールフィールドを追加するにはどうすればよいですか?

    tinyint(1)またはboolまたはbooleanを使用できます。すべて同義語です。 boolまたはbooleanデータ型を使用する場合、それは内部的にtinyint(1)に変更されます。 PHPでは、値0はfalseを表し、1はtrueを表します。 0以外の数値も当てはまります。 テーブルを使用して、boolまたはbooleanの内部表現を確認してみましょう。テーブルを作成するためのクエリは次のとおりです。 mysql> create table AddBoolDemo -> ( -> isToggle bool -> ); Query OK, 0 rows

  2. MySQLテーブルから主キーを削除できますか?

    はい、MySQLのDROPを使用して主キーを削除できます。以下は構文です- alter table yourTableName drop primary key; まずテーブルを作成しましょう- mysql> create table DemoTable    (       UserId int NOT NULL PRIMARY KEY    ); Query OK, 0 rows affected (0.58 sec) 以下は、テーブルの説明を確認するためのクエリです- mysql> desc DemoT