10-1ビューTips371 チェック制約付きのビューを作成するには
Level2
PointCREATE VIEW命令でWITH CHECK OPTION句を指定します
CREATE [OR REPLACE]
[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
[DEFINER={ユーザ名|CURRENT_USER}] [SQL SECURITY {DEFINER|INVOKER}]
VIEW ビュー名 [(列名,...)] AS SELECT命令
[WITH [CASCADED|LOCAL] CHECK OPTION]
WITH CHECK OPTION句は「更新可能なビュー」(370項も参照)に対してビューの条件外のレコードに対する変更をチェックします。つまり、「IDが20以上のレコードを取得するビュー」をWITH CHECK OPTION指定で定義した場合、そのビューに対して(たとえば)IDが10のレコードを挿入しようとするとチェックが働き、エラーとなります。(たとえば)ビューに新規のデータを登録しても、絞り込み範囲から外れているのでビューからは参照できない、あるいはデータを更新したとたんにビューからは見えなくなってしまう、という不具合を防ぐことができ
この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録