sql >> データベース >  >> RDS >> Database

SQLの主キー:主キーの操作について知っておくべきことすべて

    毎日2.5兆バイトのデータを生成する時代では、データを適切に処理し、一意のレコードを識別することが非常に重要です。したがって、SQLの主キーに関するこの記事では、リレーショナルデータベースが存在する場合に、テーブル内の各レコードを一意に識別する方法について説明します。

    この記事では、次のトピックについて説明します。

    1. 主キーとは何ですか?
    2. 主キーのルール
    3. 主キー操作:
    4. テーブル作成の主キー
    5. ALTERTABLEの主キー
    6. 主キーを削除する

    SQLの主キーとは何ですか?

    主キー制約は、テーブル内のすべてのタプルまたはレコードを一意に識別できるキーの一種です。すべてのテーブルは1つの主キーのみを持つことができますが、複数の候補キーを持つことができます。また、各主キーは一意である必要があり、NULL値を含めることはできません。

    主キーは、さまざまなテーブルを参照し、参照整合性を形成するために外部キーとともに使用されます。表Aの場合、主キーは単一または複数の列で構成できます。

    主キーとは何かがわかったので、次のSQLの主キーに関するこの記事では、主キーのルールを理解しましょう。

    主キーのルール

    主キーのルールは次のとおりです。

    1. 主キーとして選択された列のすべての値は一意である必要があります。
    2. すべてのテーブルが持つことができる主キーは1つだけです
    3. 主キー列の値をNULLにすることはできません
    4. 既存の主キーを使用して新しい行を挿入することはできません

    主キーのルールがわかったので、次のSQLの主キーに関するこの記事では、主キーの操作を見てみましょう。

    主キー操作:

    主キーに存在するさまざまな操作を理解するには、次の表を検討してください。

    顧客テーブル:

    CustomerID

    CustomerName

    PhoneNumber

    1

    Rohit

    9876543210

    2

    ソナル

    9765434567

    3

    Ajay

    9765234562

    4

    アイシュワリヤー

    9876567899

    5

    Akash

    9876541236

    テーブル作成の主キー

    次の構文を使用して、このテーブルの作成中に「customerID」列に主キーを作成できます。

    
    #For SQL Server/ MS Access/ Oracle
    CREATE TABLE Customers (
    CustomerID int NOT NULL PRIMARY KEY,
    CustomerName varchar(255) NOT NULL,
    PhoneNumber int
    );
    #MySQL
    CREATE TABLE Customers (
    CustomerID int NOT NULL,
    CustomerName varchar(255) NOT NULL,
    PhoneNumber int
    PRIMARY KEY (customerID)
    );
    

    複数の列に主キーを適用する

    テーブルの作成中に複数の列に主キーを適用するには、次の例を参照してください。

    CREATE TABLE Customers (
    customerID int NOT NULL,
    CustomerName varchar(255) NOT NULL,
    PhoneNumber int,
    CONSTRAINT PK_Customer PRIMARY KEY (CustomerID,CustomerName)
    );
    

    下の画像を参照してください。

    次に、SQLの主キーに関するこの記事では、ALTERTABLEで主キーを使用する方法を見てみましょう。

    ALTERテーブルの主キー

    「customers」テーブルがすでに作成されていて、テーブルを変更したい場合は、次の構文を使用して「customerID」列に主キーを作成できます。

    ALTER TABLE Customers
    ADD PRIMARY KEY (CustomerID);
    

    主キー制約に名前を追加して複数の列に定義する場合は、次のSQL構文を使用します。

    ALTER TABLE Customers
    ADD CONSTRAINT PK_Customer PRIMARY KEY (CustomerID,CustomerName);
    

    次に、SQLの主キーに関するこの記事では、主キーを削除する方法を理解しましょう

    主キーの削除/削除

    主キーを削除するには、次の例を参照してください。

    #For SQL Server/ MS Access/ Oracle
    ALTER TABLE Customers
    DROP CONSTRAINT PK_Customer;
    #For MySQL
    ALTER TABLE Customers
    DROP PRIMARY KEY;
    

    これで、この記事は終わりです。 SQLで主キーを使用する方法を理解していただければ幸いです。 詳細を知りたい場合 MySQL そしてこのオープンソースのリレーショナルデータベースを理解してから、をチェックしてください。 MySQLDBA認定トレーニング には、インストラクター主導のライブトレーニングと実際のプロジェクトの経験が含まれています。このトレーニングは、MySQLを深く理解し、主題をマスターするのに役立ちます。

    質問がありますか?この記事の「SQLの主キー」に関するコメントセクションでそれについて言及してください。折り返しご連絡いたします。


    1. MySQLデータベースをMSSQLServerにインポートします

    2. 間違ったmysqlクライアントライブラリ用にコンパイルされたmysql2gem

    3. 初心者のためのSQLSELECT

    4. Oracleエイリアシングを理解する-2番目のクエリでラップされない限り、エイリアスがクエリで認識されないのはなぜですか?