MySQLチュートリアル

MySQLホーム MySQLイントロ MySQL RDBMS

MySQL SQL

MySQL SQL MySQL SELECT MySQL WHERE MySQL AND、OR、NOT MySQL ORDER BY MySQL INSERT INTO MySQLNULL値 MySQL UPDATE MySQLDELETE MySQL LIMIT MySQLMINおよびMAX MySQL COUNT、AVG、SUM MySQL LIKE MySQLワイルドカード MySQL IN MySQL BETWEEN MySQLエイリアス MySQLが参加します MySQL内部結合 MySQL LEFT JOIN MySQL RIGHT JOIN MySQL CROSS JOIN MySQL自己結合 MySQL UNION MySQL GROUP BY MySQL HAVING MySQLが存在します MySQL ANY、ALL MySQL INSERT SELECT MySQLケース MySQLヌル関数 MySQLコメント MySQL演算子

MySQLデータベース

MySQL Create DB MySQLドロップDB MySQLテーブルの作成 MySQLドロップテーブル MySQL ALTER TABLE MySQLの制約 MySQLはNullではありません MySQLユニーク MySQLプライマリキー MySQL外部キー MySQLチェック MySQLのデフォルト MySQL CreateIndex MySQL自動インクリメント MySQLの日付 MySQLビュー

MySQLリファレンス

MySQLデータ型 MySQL関数

MySQLの

MySQLの例 MySQLクイズ MySQL演習

MySQLの主キー制約


MySQLの主キー制約

PRIMARY KEY制約は、テーブル内の各レコードを一意に識別します

主キーにはUNIQUE値を含める必要があり、NULL値を含めることはできません。

テーブルに含めることができる主キーは1つだけです。表では、この主キーは単一または複数の列(フィールド)で構成できます。


CREATETABLEの主キー

次のSQLはPRIMARY KEY、「Persons」テーブルが作成されるときに「ID」列にを作成します。

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (ID)
);

制約の命名を許可し、複数の列に制約PRIMARY KEYを定義する PRIMARY KEYには、次のSQL構文を使用します。

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);

注: PRIMARY KEY上記の例では、1つ(PK_Person)しかありません。ただし、主キーのVALUEは、2つの列(ID + LastName)で構成されます。



ALTERTABLEの主キー

PRIMARY KEYテーブルがすでに作成されているときに「ID」列に制約を作成するには、次のSQLを使用します。

ALTER TABLE Persons
ADD PRIMARY KEY (ID);

制約の命名を許可し、複数の列に制約PRIMARY KEYを定義する PRIMARY KEYには、次のSQL構文を使用します。

ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);

注:主キーの追加に使用する場合はALTER TABLE、主キー列にNULL値が含まれないように宣言されている必要があります(テーブルが最初に作成されたとき)。


主キー制約を削除します

制約を削除するPRIMARY KEYには、次のSQLを使用します。

ALTER TABLE Persons
DROP PRIMARY KEY;