SQL Developerを使用して表、索引、ビューおよびプログラム・コードを管理する以外にも、SQL Developerを使用して次を含む他のスキーマ・オブジェクトを管理できます。
順序は、一意の整数を生成するデータベース・オブジェクトです。順序に問い合せるたびに、現在の値は増加し、結果の整数が返されます。問合せは複数ユーザーが同時に行うことができ、各ユーザーは常に一意の値を受け取ります。そのため、順序を使用した表内の主キーの値の指定は、表にデータを挿入するユーザーの数に関係なく、確実にキー値を一意にする簡単な方法です。
シノニムは、表やビューなどのスキーマ・オブジェクトの別名です。シノニムによって、基礎となるデータベース構造をアプリケーションやユーザーに対して簡単に非表示にできます。シノニムはプライベートまたはパブリックにできます。プライベート・シノニムを参照するユーザーがシノニム所有者ではない場合、パブリック・シノニムはスキーマ名で修飾する必要はありませんが、プライベート・シノニムは修飾する必要があります。たとえば、SELECT
オブジェクト権限をHR.EMPLOYEES
表に付与されたユーザーが発行した次の問合せについて考慮します。
SELECT employee_id, salary FROM hr.employees ORDER BY salary
HR.EMPLOYEES
表の別名として、PERSONNEL
という名前のパブリック・シノニムを作成し、HR.EMPLOYEES
表でPUBLIC
(すべてのデータベース・ユーザー)に対してSELECT
権限を付与すると想定します。指定されたパブリック・シノニムを使用して、すべてのユーザーがより簡単な次の問合せを発行できます。
SELECT employee_id, salary FROM personnel ORDER BY salary
この問合せを作成したユーザーは個人データを含むスキーマ名を確認する必要はありません。
注意:
ユーザーがpersonnel
という名前の表を所有している場合は、その表が問合せに使用されます。そのような表が存在しない場合は、データベースでパブリック・シノニムを解決し、HR.EMPLOYEES
表を使用します。
シノニムには、スキーマ名が異なる場合でも本番データベースと同じシノニムを開発データベースで使用できるという付加的なメリットがあります。この方法により、どちらの環境でもアプリケーション・コードを未修正の状態で実行できます。たとえば、DEV1
スキーマを示す開発データベースでPERSONNEL
シノニムが定義されている場合、DEV1
スキーマにEMPLOYEES
表があるデータベース開発では問合せをエラーなしに実行できます。
シノニムは単なる別名であるため、データ・ディクショナリ内に定義以外の記憶域は必要ありません。問合せのシノニムを参照するには、示されているオブジェクトの権限が必要です。シノニム自体は保護できません。シノニムに対するオブジェクト権限をユーザーに付与すると、シノニムが指し示すオブジェクトに対する権限を付与することになります。
データベース・リンクは、他のOracle Databaseを示すスキーマ・オブジェクトです。データベース・リンクを使用すると、リモート・データベースのオブジェクトを問合せまたは更新できます。『Oracle Database管理者ガイド』で説明されているように、データベース・リンクは分散データベース環境で使用されます。
関連項目:
『Oracle Database 2日で開発者ガイド』
『Oracle Database SQL言語リファレンス』