1

「成績」と「終了コース」の列を含むテーブルがあります。AF からの Grade の値を制限する外部キー制約があります。私が持っている質問は次のとおりです。「成績」列に AE のみを含めることができるようにするにはどうすればよいですか? それ以外の場合は、値 F のみを持つことができますか?

4

2 に答える 2

1

次のように、これにチェック制約を追加できます。

alter table Table1 add constraint CK_Grade
check (
        (FinishedCourse = 0 and Grade = 'F') or
        (FinishedCourse = 1 and Grade <> 'F')
        -- you can use in ('A', 'B', 'C', 'D'), but since you have foreign key,
        -- it's enough to check Grade <> 'F'
)

また

alter table Table1 add constraint CK_Grade
check (FinishedCourse = case when Grade = 'F' then 0 else 1 end)
于 2013-10-24T08:24:27.960 に答える