DBMS の表において,指定した列に NULL 値の入力は許すが,既に入力されて
いる値の入力は禁止する SQL の制約はどれか。

 ア CHECK

 イ PRIMARY KEY

 ウ REFERENCES

 エ UNIQUE

■キーワード■ UNIQUE

■解答■
  テクニカルエンジニア(データベース)午前平成16年問45

 エ UNIQUE

> CHECK制約:入力可能な値を制限する。
> PRIMARY KEY制約:指定した列(列の組み合わせ)の値が一意で、かつNULL値でな
> い。
> REFERENCES制約:親テーブルの指定列に存在する値のみ入力可能。
> UNIQUE制約:指定した列(列の組み合わせ)の値が一意で、NULLを許可する。

 どうもありがとうございました。

>  ア CHECK 検査制約
>
>  イ PRIMARY KEY 主キー制約、一意性制約
>
>  ウ REFERENCES 参照制約
>
>  エ UNIQUE 一意性制約

 どうもありがとうございました。

>  以下のページを参照しました。
>  http://www.techscore.com/tech/sql/03_03.html

>    主キーとは、ベーステーブルの各行を一意に識別するための 1つ以上の
>   列のグループのことです。主キーは NULL を持たず、一意であることを保
>   障するために制約が適用されます。

>    テーブルの作成時に、列に UNIQUE 列制約を設定すると、データベース
>   はすでに他の行の同じ列に存在する値の設定を拒否することができます。
>   UNIQUE 制約は、次の点で PRIMARY KEY 制約と異なっています。
>   ・PRIMARY KEY 制約は、あるテーブルの 1つの列または複数の列に1度だ
>    け使用できるが、UNIQUE 制約は何度でも使用できる。
>   ・PRIMARY KEY 制約を持つ列には NULL が含まれないが、UNIQUE 制約を
>    持つ列には NULL が含まれる可能性がある。

>    例えば入力したデータが正しい範囲を逸脱していないか、正しいフォー
>   マットになっているかなど、テーブルに入力するデータを必要に応じて制
>   約を適用したい場合には、CHECK 制約を利用します。CHECK 制約を利用す
>   れば、テーブルに入力されるデータが受理されるにあたって、満たしてい
>   なければならない条件を定義できます。

 どうもありがとうございました。

> http://www.techscore.com/tech/sql/03_03.html
> http://www.techscore.com/tech/sql/03_04.html

 どうもありがとうございました。