Oracle は、さまざまな業界のデータ管理に広く使用されている人気のリレーショナル データベース管理システム (RDBMS) です。外部キーは、2 つのテーブル間の関係に基づくデータベース オブジェクトであり、データの整合性を制約し、データの一貫性を確保する役割を果たします。 Oracle データベースでは、外部キーのクエリは一般的な操作です。この記事では、Oracle を使用して外部キーをクエリする方法を紹介します。
1. テーブル構造の表示
Oracle を使用して外部キーをクエリする前に、テーブルの構造と関係を理解する必要があります。次の SQL ステートメントを使用して、テーブルの構造をクエリできます。
desc table_name;
ここで、table_name はクエリ対象のテーブルの名前です。このステートメントを実行すると、テーブルのフィールド リストとデータ型がリストされます。
2. 外部キーのクエリ
次のメソッドを使用して、Oracle で外部キーをクエリできます:
Oracle システム テーブル "USER_CONSTRAINTS" には、主キー、外部キー、チェック制約などを含むすべての制約情報がデータベースに保存されます。次の SQL ステートメントを使用して、外部キー名と関連情報をクエリできます。
SELECT CONSTRAINT_NAME, TABLE_NAME, R_CONSTRAINT_NAME, STATUS FROM USER_CONSTRAINTS WHERE CONSTRAINT_TYPE = 'R' AND TABLE_NAME = 'table_name';
このうち、CONSTRAINT_NAME は外部キー名、TABLE_NAME は外部キーを含むテーブル名、R_CONSTRAINT_NAME は関連する主キーです。 name、STATUS は外部キーのステータスです。外部キーはキーワード「CONSTRAINT_TYPE = 'R'」でフィルタリングして除外できます。
Oracle システム ビュー "USER_FK_COLUMNS" は、外部キー情報の同様の詳細情報を提供します。次の SQL ステートメントを使用して、外部キー名と関連情報をクエリできます。
SELECT UC.CONSTRAINT_NAME, UC.TABLE_NAME, UCC.COLUMN_NAME, UC.R_CONSTRAINT_NAME FROM USER_CONSTRAINTS UC, USER_CONS_COLUMNS UCC WHERE UC.CONSTRAINT_TYPE = 'R' AND UC.CONSTRAINT_NAME = UCC.CONSTRAINT_NAME AND UC.TABLE_NAME = 'table_name';
このうち、UC.CONSTRAINT_NAME は外部キー名、UC.TABLE_NAME は外部キーを含むテーブル名、UCC です。 .COLUMN_NAME は外部キー列名、UC.R_CONSTRAINT_NAME は関連付けられた主キー名です。 2 つのシステム テーブルを接続し、条件を追加することで、特定のテーブルの外部キー情報をクエリできます。
3. 概要
上記は、Oracle を使用して外部キーをクエリする方法です。実際のアプリケーションでは、外部キー クエリはテーブル間の関係を理解し、データの整合性をチェックし、データの一貫性を確保するのに役立ちます。外部キーを変更または削除するときは、不要なエラーを避けるために、データに対する外部キー制約の影響を考慮する必要があることに注意してください。使用する前に、まず関連するテーブルをバックアップし、慎重に操作する必要があります。
以上がOracleクエリの外部キーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。