0

問題は、関係 R(A,B,C,D) がある場合、A が PK であり、C がその関係の代替キーである場合、その関係に基づいてテーブルを作成するときに、C が一意であることを示す必要があるかどうかです。鍵?つまり、次のとおりです。

create table R (
                 A A's domain,
                 B B's domain,
                 C C's domain,
                 D D's domain,
                 primary key A,
                 unique C 
                )

このキーが他のテーブルからポストされていなくても、C がそのテーブルの一意のキーであることを指定する必要がありますか (主キーとして選択されていない候補キーにすぎませんか?

4

2 に答える 2

1

Unique Key は制約です。つまり、 C を unique として宣言すると、その列に重複する値は許可されません。指定しない場合、値が重複する可能性があるため、候補キーとして失敗します

于 2012-09-27T06:12:48.907 に答える
0

これを指定することでテーブルに誤ったデータが挿入されるのを防ぐことができる場合 (たとえば、 に同じ値を持つ 2 つの行が存在するなどC)、そうしない唯一の理由は、それがパフォーマンスの問題であることが証明されている場合です。誤ったデータが他のメカニズムによって防止されることを実証しました。

于 2012-09-27T06:32:12.790 に答える