データ整合性を確保するため、デフォルト値、データ制約、データベースの参照構造を保つための制約を利用できます。
各エントリのデータの信頼性を高めるために、カラムにデフォルト値を設定できます。次に例を示します。
すべてのユーザ、またはクライアント・アプリケーションによるトランザクション日を記録するデフォルト値を、現在の日付にする。
新しいローの追加以外で、特にユーザが操作しなくてもカラムのデフォルト値を自動的に 1 ずつ大きくしていく。このようにすると、(発注書などの) 項の値をユニークに、また連続の値にできます。
カラムに対して設定できるデフォルトの詳細については、カラム・デフォルトの使い方を参照してください。
カラムやテーブルごとに、データに対して適用できる制約がいくつかあります。次に例を示します。
NOT NULL 値制約を適用すると、カラムに NULL 値が入力されるのを防ぐことができる。
検査制約をカラムに適用すると、カラム内のデータが常に一定の条件を満たすようにできる。たとえば、Salary (給与) カラムに上限と下限を設定して入力エラーを防げます。
検査制約を使って、それぞれのカラム値の差を検査できる。たとえば、図書館データベースで、DateReturned (返却日) エントリが DateBorrowed (貸出日) エントリよりも必ず後になるように指定できます。
トリガを使うと検査条件をより高度な形で適用できる。プロシージャ、トリガ、バッチの使用を参照してください。
また、カラム制約をドメインから継承させることもできます。上記の制約を含む、テーブルやカラムの制約の詳細については、テーブル制約とカラム制約の使い方を参照してください。
関係は、プライマリ・キーと外部キーで定義され、リレーショナル・データベース・テーブル間の情報の橋渡しをします。関係は、データベースの設計に直接組み入れてください。次に示す整合性規則を使って、データベース構造を維持できます。
エンティティ整合性 エンティティ整合性はプライマリ・キーを追跡します。これはテーブルの各ローが IS NOT NULL を保証するプライマリ・キーによってユニークに識別できることを保証します。
参照整合性 参照整合性はテーブル間の関係を定義する外部キーを追跡します。これは、すべての外部キーが対応するプライマリ・キーの値に一致すること (NULL 値が許可されている場合には NULL も可) を保証します。
参照整合性の確保の詳細については、エンティティ整合性と参照整合性の確保を参照してください。プライマリ・キーと外部キーの関係の正しい設計に関する詳細については、SQL Anywhere でのデータベースの作成を参照してください。
データ整合性の確保にはトリガも使用できます。「トリガ」はデータベースに格納されたストアド・プロシージャの一種で、特定のテーブル情報が修正されると自動的に実行されます。トリガはデータベース管理者や開発者にとって、データの信頼性を維持するための強力な手段です。
トリガの詳細については、プロシージャ、トリガ、バッチの使用を参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |