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

TSQLでnull以外の主キーを使用するのはなぜですか?

    わかりやすくするために編集

    SQL仕様によると、主キーにNULLを含めることはできません。これは、「NOTNULLPRIMARYKEY」または単に「PRIMARYKEY」のいずれかで列を装飾することも同じことを行う必要があることを意味します。ただし、SQL標準に正しく準拠している問題のSQLエンジンに依存しています。初期のバグによる例として、SQL Liteは標準を正しく実装せず、非整数の主キーでnull値を許可します(sqlite.org/lang_createtable.htmlを参照)。これは、(少なくとも)SQLLiteの場合、2つのステートメントが2つの異なることを行うことを意味します。

    「NOTNULLPRIMARYKEY」は意図を明確に示しており、主キーが削除されてもnull以外の値を示し続けるため、これが推奨される構文です。



    1. PL / SQL、文字列内の一重引用符をエスケープする方法は?

    2. MySQLユーザーDBにパスワード列がありません-OSXへのMySQLのインストール

    3. Postgres-2つの配列の交差を返す関数?

    4. MySQLデータベースを作成して特権を設定する方法