Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL リファレンス » SQL の使用 » SQL 文 » SQL 文 (P ~ Z)

 

VALIDATE 文

この文は、現在のデータベース、または現在のデータベース内にあるテーブルやマテリアライズド・ビューを検証する場合に使用します。

構文 1 - テーブルとマテリアライズド・ビューの検証
VALIDATE { 
TABLE [ owner.]table-name
   | MATERIALIZED VIEW [ owner.]materialized-view-name }
[ WITH EXPRESS CHECK ]
構文 2 - データベースの検証
VALIDATE { CHECKSUM | DATABASE }
構文 3 - インデックスの検証
 VALIDATE {
INDEX index-name 
| [ INDEX ] FOREIGN KEY role-name 
| [ INDEX ] PRIMARY KEY  }
ON [ owner.]object-name
}
object-name : 
table-name 
| materialized-view-name
パラメータ
  • WITH EXPRESS CHECK   デフォルトのチェックに加え、テーブルまたはマテリアライズド・ビューにあるローの数がインデックスのエントリ数と一致するかどうかをチェックします。このオプションは、各ローの各インデックスのルックアップは実行しません。また、チェックサムの検証も実行しません。小さいキャッシュを使用して大きいデータベースを検証する場合は、このオプションを使用するとパフォーマンスを大幅に改善できます。

備考

テーブルの検証には、チェックサムの検証が含まれます。また、テーブル内のロー数が、そのテーブルと関連がある各インデックスのロー数と一致することを検証します。WITH EXPRESS CHECK を指定すると、チェックサムの検証は実行されません。

VALIDATE DATABASE 文は、データベースのテーブル・ページがすべて現在のオブジェクトに所属することを検証します。また、VALIDATE DATABASE はチェックサム検証を実行しますが、インデックスの検証およびデータの正当性チェックは行いません。

VALIDATE CHECKSUM 文は、データベース上でチェックサムの検証を実行するときに使用します。VALIDATE CHECKSUM 文によって、データベース・ページがディスク上で変更されていないことを確認します。チェックサムを有効にしてデータベースを作成すると、各データベース・ページがディスクに書き込まれる前に、そのページのチェックサムが計算されます。VALIDATE CHECKSUM は、各データベース・ページをディスクから読み込み、各ページのチェックサムを計算します。ページに対して計算されたチェックサムが、そのページについて格納されているチェックサムと一致しない場合は、エラーが発生し、無効なページに関する情報がデータベース・サーバ・メッセージ・ウィンドウに表示されます。重要なデータベース・ページにはチェックサムが含まれるため、VALIDATE CHECKSUM 文はチェックサムが無効なデータベースの場合でも有効なことがあります。

テーブルまたはマテリアライズド・ビューに対して、インデックスの統計情報など、インデックスを検証するときに VALIDATE INDEX 文を使用します。VALIDATE INDEX 文によって、インデックスで参照されているすべてのローが実際に存在していることを確認します。外部キー・インデックスの場合は、対応するローがプライマリ・テーブルにあることも確認します。この検査は、VALIDATE TABLE 文によって実行される妥当性検査を補完するものです。VALIDATE INDEX 文は、指定されたインデックスについてレポートされた統計が正確であるかどうかも検証します。正確でない場合、エラーが生成されます。

警告

テーブルまたはデータベース全体の検証は、データベースに変更を加えている接続がない場合に実行してください。そうしないと、実際に破損していなくても、何らかの形でデータベースが破損したことを示すエラーがレポートされます。

パーミッション

DBA 権限または VALIDATE 権限が必要です。

関連する動作

なし

参照
標準と互換性
  • SQL/2003   ベンダ拡張。