スケーラブルデータベースサーバ HiRDB Version 8 解説(UNIX(R)用)
データベース中の表のデータは,値の範囲や条件など制限を持つ場合が多くあります。例えば,商品の情報をデータベースに格納する場合,商品価格として負の値はあり得ません。そのため,負の値はデータベースに存在してはいけない値であり,挿入又は更新時に値をチェックする必要があります。このように,データ挿入又は更新時に制約条件をチェックし,条件を満たさないデータの場合は操作を抑止することで表データの整合性を保つ機能が検査制約です。また,このマニュアルでは検査制約を定義した表を検査制約表といいます。
なお,ユティリティの実行などで検査制約表のデータの整合性が保証できなくなる場合があります。この場合,検査制約表は検査保留状態になります。検査保留状態については,「5.10 検査保留状態」を参照してください。
検査制約については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。
検査制約は,定義系SQLのCREATE TABLEでCHECKを指定し,表の値の制約条件を探索条件で指定します。また,検査保留状態を使用するには,pd_check_pendingオペランドにUSEを指定するか,又はオペランドの指定を省略します。
検査制約表に対する操作系SQLによる更新,追加,又は削除は,HiRDBがSQL実行時にチェックし,整合性を保証します。ただし,次に示すユティリティによる操作をした場合,チェックをしないため,整合性を保証できなくなることがあります。
これらの操作をした場合,データの整合性を確認する必要があります。データの整合性確認手順については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。また,pd_check_pendingオペランドにUSEを指定していて,これらの操作をした場合,検査制約表は検査保留状態になります。
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.