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

主キーにnull値を含めることができないのはなぜですか?

    PRIMARYKEY列はUNIQUEおよびNOTNULLと同等であり、デフォルトでインデックス付きの列です。
    主キーはテーブル内の行を識別するため、2つの異なる行が同じキーを持つべきではないため、UNIQUEである必要があります。
    さらに、主キーは他のテーブルでFOREIGN KEYとして使用される場合があります。そのため、他のテーブルが参照されるテーブルの行を検索できるように、主キーをNULLにすることはできません。

    例:

    CREATE person{   
       id INT PRIMARY KEY,  -- equals UNIQUE NOT NULL   
       name VARCHAR(20)   
    };   
    
    CREATE family{   
       id INT PRIMARY KEY,  -- equals UNIQUE NOT NULL   
       menber_id INT FOREIGN KEY REFERENCE person(id)   
    };   
    


    1. PythonでSSLを介してリモートPostgreSQLデータベースに接続する方法

    2. スウェーデンの新しい電子IDFrejaeIDの背後にあるデータベースの自動化

    3. ストックオプションによる在庫管理

    4. 2つの異なるテーブルの主キーを参照するPOSTGRESQL外部キー