このチュートリアルでは、データベース・ファイルを整理するためのアプリケーションとプロジェクトを作成します。 データベースに接続して新規ユーザーを作成した後、リバース・エンジニアリングするオフライン・データベースをOracle JDeveloperで作成します。
Show more or less詳細表示
目的 所要時間 アプリケーション
このチュートリアルでは、データベース・コンポーネントを使用してデータベース・ダイアグラムを作成する方法を説明します。 データベース・ユーザーを作成し、現行のデータベース定義を使用してオフライン定義をリコンサイルし、DDLリコンサイル・スクリプトを生成する方法を説明します。 最後に、データベース・オブジェクトのリバース・エンジニアリングを実行します。
これから作成するアプリケーションの完成版を確認するには、「Download」ボタンをクリックして最終アプリケーションのzipファイルをダウンロードし、JDeveloperのフォルダに解凍します。
40分 Download applicationname.zip
ステップ1: 新規アプリケーションとプロジェクトの作成

Oracle JDeveloperアプリケーションは、組織構造の最上位レベルです。 このファイルには、アプリケーションの作成中に、ユーザーが作業しているオブジェクトの情報が格納されます。 開発中には、プロジェクトと環境設定が追跡されます。

  1. スタート」→「すべてのプログラム」→「Oracle Fusion Middleware 11.1.2.0.0」→「JDeveloper Studio 11.1.2.0.0」を選択して、Oracle JDeveloperを起動します。

  2. ロールを選択するよう指示されたら、「Database Developer」を選択して、「OK」をクリックします。

    起動時のSelect Roleダイアログ
  3. Close」をクリックして、Tip of the Dayウィンドウを閉じます。

    ロードが終了すると、JDeveloper IDEが表示されます。 Show more or less詳細表示
  4. アプリケーション・ナビゲータで、「New Application」をクリックします。

    New Applicationオプション
  5. New Galleryで、「General」→「Applications」を選択し、「Database Application」を選択します。

    New Gallery

    OK」をクリックします。

  6. Create Database Applicationダイアログで、Application NameをApplication1からCreateDBObjectsに変更し、Application Package Prefixとしてoracleを入力します。 新しいアプリケーション名に合わせてディレクトリ名は自動的に変更されます。

    Create Database Applicationダイアログ

    Next」をクリックします。

  7. ウィザードのステップ2で、Project NameとしてNewSchemaを入力します。

    Create Database Applicationダイアログ

    Finish」をクリックします。

    JDeveloperを使用する場合、作業内容はアプリケーションに含まれるプロジェクト内に整理されます。 Show more or less詳細表示
  8. アプリケーション・ナビゲータは、次のように表示されます。

    アプリケーション・ナビゲータ
    アプリケーション・ナビゲータのProjectsパネルでは、プロジェクトは階層内の最上位レベルとして表示されます。 Show more or less詳細表示
  9. Save AllSave Allアイコンをクリックして作業内容を保存します。 以降も定期的に作業内容を保存してください。

ステップ2: データベース・ダイアグラムの作成

オフラインでデータベース・オブジェクトの定義を作成する方法の1つに、データベース・ダイアグラムを使用する方法があります。 データベース・ダイアグラムを使用すると、オフラインの表、外部キー関係、ビュー、シノニム、シーケンス、使用法、JOINをダイアグラム上に直接作成できます。 コンポーネント・パレットからダイアグラム上にコンポーネントをドラッグしてから、リレーションシップや注釈(添付ファイル、オブジェクト間の依存性など)を描画します。 ダイアグラム上の各オブジェクトの表現には、UML表記法の1形式が使用されます。 ダイアグラム上に作成した各コンポーネントは、アプリケーション・ナビゲータにも表示されます。 データベース・ダイアグラムの作成を開始するには、Create Database Diagramダイアログを開きます。

  1. ダイアログを開くには、「File」→「New」を選択します。

    「File」→「New」メニュー・オプション
  2. New Galleryで「Database Tier」を展開し、「Offline Database Objects」を選択してから「Database Diagram」を選択します。

    New Gallery

    OK」をクリックします。

    ダイアグラムからはオブジェクトを直接編集できます。Show more or less詳細表示
  3. Create Database Diagramダイアログで、NameにDatabase Diagramを入力します。

    Create Databaseダイアログ

    OK」をクリックします。

  4. 新しい空のダイアグラムが開きます。

    ダイアグラム・ペイン
  5. Component PaletteにDatabaseのコンポーネントが表示されていることを確認します。

    コンポーネント・パレット
  6. Component PaletteからTableアイコン「Tableアイコン」コンポーネントをドラッグし、ダイアグラム上にドロップします。

    ダイアグラム・ペイン
  7. Specify Locationダイアログで、「Application Project」を選択します。 「New」をクリックしてCreate Offline Databaseダイアログを開きます。

    Specify Locationダイアログ
  8. データベース名としてDBOffline1を、デフォルトのスキーマ名としてDBDEMOを入力します。

    Create Offline Databaseダイアログ

    OK」をクリックします。 再度「OK」をクリックして、Specify Locationダイアログを閉じます。

  9. Application Navigatorに、新規のオフライン・データベースのダイアグラムと表が表示されます。

    アプリケーション・ナビゲータ
  10. データベース・ダイアグラムには、デフォルトの表TABLE1が表示されます。

    ダイアグラム内の表
  11. Save AllSave Allアイコン」をクリックして作業内容を保存します。

ステップ3: ダイアグラム上でのオフライン・データベース表の作成

Oracle JDeveloperでは、データベース接続を介してデータベース・オブジェクトを直接操作できます。 または、オフラインでデータベース定義を作成し、データベース・スキーマにその定義を反映させることもできます。

新規の表およびビューを作成して、それらの情報をデータベースに反映できます。 Show more or less詳細表示
  1. データベース・ダイアグラムで、新しい表名「TABLE1」を選択し、その名前をPERSONSに変更します。 [Enter]または[Tab]を押します。

    ダイアグラム内の表
  2. 列定義を追加するには、表名の下にある白のボックス内をクリックし、もう一度クリックしてデフォルトの形式を表示します。 PERSON_ID:NUMBER(15,0)と入力して、[Tab]を押します。

    ダイアグラム内の表
  3. 次のボックスに表示されるデフォルト形式を使用して、列定義FIRST_NAME:VARCHAR2(30 BYTE)LAST_NAME:VARCHAR2(30 BYTE)、およびGENDER:VARCHAR2(1 BYTE)を追加します。このとき、[Tab]を押して次に進めながら1つずつ追加します。

    ダイアグラム内の表
    ボックスにデフォルト書式が表示されている場合は、デフォルト・テキストを上書きできます。Show more or less詳細表示
  4. ダイアグラム上のPERSONS表コンポーネントをダブルクリックしてEdit Tableダイアグラムを開き、主キーを作成します。

    Edit Tableダイアログ
  5. ナビゲーション・パネルで「Primary Key」を選択し、PERSON_IDをAvailable ColumnsリストからSelected Columnsリストに移動します。

    Edit Tableダイアログ

    OK」をクリックします。 1つの一意索引が主キーに自動的に追加されます。

  6. Component Paletteで、Tableコンポーネント「Tableアイコン」をダイアグラム上にドラッグ・アンド・ドロップします。 表の名前をADDRESSESに変更します。

    ダイアグラム・ペイン
  7. ADDRESSES表に ADDRESS_ID:NUMBER(10,0)ADDRESS_LINE1:VARCHAR2(40)およびADDRESS_LINE2:VARCHAR2(240)の各列定義を追加します。

    ダイアグラム内の表
  8. ダイアグラム上の「ADDRESSES」表コンポーネントをダブルクリックしてEdit Tableダイアグラムを開き、主キーを作成します。

    Edit Tableダイアログ
  9. ナビゲーション・パネルで「Primary Key」を選択し、ADDRESS_IDをAvailable ColumnsリストからSelected Columnsリストに移動します。

    Edit Tableダイアログ

    OK」をクリックします。

  10. Component Paletteで、Foreign Keyコンポーネント「Foreign Keyアイコン」を選択します。 ダイアグラムで、PERSONS表の最上部をクリックしてからADDRESSES表の最上部をクリックし、外部キーを作成します。

    Databaseダイアグラム
    Create Foreign Keyダイアログは、外部キーのデフォルト・プロパティの編集に使用します。Show more or less詳細表示
  11. Create Foreign Keyダイアログで、外部キーのデフォルト・プロパティを受け入れて「OK」をクリックします。

    Create Foreign Keyダイアログ
  12. ダイアグラムは次のように表示されます。

    Databaseダイアグラム

    主キー、外部キーおよび索引が表に表示されていることを確認します。

  13. アプリケーション・ナビゲータは、次のように表示されます。

    アプリケーション・ナビゲータ
    アプリケーション・ナビゲータのOffline Database Sourcesノードに、PERSONS表とADDRESSES表が表示されます。Show more or less詳細表示
  14. Save All「Save Allアイコン」をクリックして作業内容を保存します。

ステップ4: オフライン・データベース・ビューの作成

ビューは表を結合するSELECT文の結果セットに基づいて作成された仮想表で、単一の表から選択されたデータであるかのようにデータを表示します。 ビューに、SQL関数、結合、WHERE、GROUP BY、ORDER BY、HAVINGなどの句を追加すれば、望みどおりのデータをユーザーに提示できます。

  1. Component PaletteからViewコンポーネント「Viewアイコン」をドラッグし、ダイアグラム上にドロップします。 ビューの名前をPERSON_INFOに変更します。

    Databaseダイアグラム
  2. ダイアグラム内で、「PERSON_INFO」をダブルクリックしてEdit Viewダイアログを開き、ナビゲーション・パネルで「FROM clause」を選択します。

    Edit Viewダイアログ
  3. Availableリストで「ADDRESES」→「ADDRESSES_PERSONS_FK」を展開し、「PERSONS」を選択してSelectedリストに移動させます。これにより、ADDRESSESとPERSONSの間に結合が作成されます。

    Edit Viewダイアログ
  4. Selectedリストで「JOIN」ノードを選択し、EditEditアイコン」をクリックします。

    Edit Viewダイアログ
    Edit ViewダイアログでJOINを作成できます。「JOIN」ノードを選択すると、Editボタンが使用可能になります。Show more or less詳細表示
  5. Edit Joinダイアログで、外部キーを使用して作成されるデフォルトのJOINを受け入れ、「OK」をクリックします。

    Edit Joinダイアログ

    もう一度「OK」をクリックして、Edit Viewダイアログを閉じます。

  6. データベース・ダイアグラムで、PERSONS表からPERSON_ID以外のすべての列を選択し、 PERSONSビュー上にドラッグ・アンド・ドロップします。

    Databaseダイアグラム
  7. データベース・ダイアグラムで、ADDRESSES表からPERSON_ID以外のすべての列を選択し、 ADDRESSESビュー上にドラッグ・アンド・ドロップします。

    Databaseダイアグラム
  8. ここまでの作業で、データベース・ダイアグラムにオフライン・データベース・ビューが追加されました。

    Databaseダイアグラム

    ここまでの作業で、データベース・ダイアグラムにオフライン・データベース・ビューが追加されました。 Show more or less詳細表示

  9. Save AllSave Allアイコン」をクリックして作業内容を保存します。

ステップ5: ダイアグラムへのシーケンスの追加

シーケンスとは、一意なシーケンシャル値を生成できるスキーマ・オブジェクトのことです。 これらの値は、主キーおよび一意キーによく使用されます。 シーケンスから取得した値をキーに設定する方法の1つに、トリガーを使用して、シーケンスのNEXTVALをフィールドに挿入する方法があります。


Edit Tableダイアログを使用して、新規シーケンスから取得した値を表の主キーに設定し、新規トリガーによって更新することを指定します。 Show more or less詳細表示

  1. アプリケーション・ナビゲータで、Offline Database SourcesDBOffline1DBDEMOの下にある「PERSONS」をダブルクリックしてEdit Tableダイアログを開きます。

    アプリケーション・ナビゲータ
  2. ナビゲーション・パネルで「Column Sequences」をクリックします。 Columnドロップダウン・リストで「PERSON_ID」が選択されていることを確認します。

    Edit Tableダイアログ
  3. Populate Column from a Sequence on insert 」チェック・ボックスを選択します。

    Edit Tableダイアログ

    OK」をクリックします。

    Edit Tableダイアログで、列にPopulate Column from a Sequence on insertを選択すると、その列用のデフォルトのシーケンスと、対応するトリガーが作成されます。 Show more or less詳細表示

  4. アプリケーション・ナビゲータにPERSONS_TRGトリガーとPERSONS_SEQシーケンスが表示されます。

    アプリケーション・ナビゲータ
  5. アプリケーション・ナビゲータで、「PERSONS_SEQ」ノードを選択し、ダイアグラム上にドラッグ・アンド・ドロップします。

    アプリケーション・ナビゲータとダイアグラム
  6. Component Paletteで「Dependency」コンポーネントを選択します。 ダイアグラムで「PERSONS」表をクリックし、「PERSONS_SEQ」シーケンスをクリックして、リレーションシップを作成します。

    データベース・ダイアグラム
  7. Save AllSave Allアイコン」をクリックして作業内容を保存します。

  8. オフライン・データベース・ダイアグラムとアプリケーション・ナビゲータに、作成した新規シーケンスとトリガーが表示されます。  

    Edit Sequenceダイアログ

    ダイアグラム内の表

    シーケンスを編集する(たとえば、増分値、最小値、最大値を設定する)には、アプリケーション・ナビゲータ内で「PERSONS_SEQ」をダブルクリックしてEdit Database Sequenceダイアログを開きます。 Show more or less詳細表示

ステップ6: 表の作成とパーティション化

例に従って操作してきた場合は、Oracle 11gデータベースをエミュレートするデータベース・オブジェクトが作成されています。 Oracle Database Express Edition(Oracle XE)など、別の種類のデータベースをエミュレートするオブジェクトを作成済みの場合は、表をパーティション化できない場合があります。


パーティション化された表を使用すると、より小さく管理しやすいパーティションと呼ばれる単位にデータを分割できます。これによりパフォーマンスが向上します。 Show more or less詳細表示
  1. アプリケーション・ナビゲータでOffline Database Sourcesの下にある「DBOffline1」ノードを右クリックし、「New Database Object」→「Table」を選択します。

    アプリケーション・ナビゲータ
  2. Create Tableダイアログで、表名としてORDERSを入力し、「Advanced」を選択して追加のオプションを表示します。 デフォルト列(COLUMN1)がColumnsリストに表示されているはずです。

    Create Tableダイアログ
  3. Column Propertiesの下にあるNameをORDER_IDに変更し、Typeドロップダウン・リストから「NUMBER」を選択します。

    Create Tableダイアログ
  4. AddAddアイコン」を3回クリックして、さらに3つのデフォルト列を追加します。 追加したらNameとTypeを次の値に変更します。 ORDER_DATE(TypeはDATE)ORDER_TOTAL(TypeはNUMBER)PERSON_ID(TypeはNUMBER)

    Create Tableダイアログ
  5. ナビゲーション・パネルで「Primary Key」を選択し、ORDER_IDをAvailable ColumnsリストからSelected Columnsリストに移動します。

    Create Tableダイアログ
  6. ナビゲーション・パネルで「Foreign Keys」を選択し、AddAddアイコン」をクリックして新規の外部キーを追加します。

    Create Tableダイアログ
  7. Referenced Tableドロップダウン・リストから「PERSONS」を選択します。

    Create Tableダイアログ
  8. Local Columnドロップダウン・リストで「PERSON_ID」が選択されていることを確認します。

    Create Tableダイアログ
    プロジェクトで参照した任意のスキーマを選択して、異なるスキーマに属する表間で外部キーを作成できます。  Show more or less詳細表示
  9. ナビゲーション・パネルで「Partitioning」を選択し、Partition Byドロップダウン・リストから「RANGE」を選択します。

    Create Tableダイアログ
  10. ORDER_DATEをAvailableリストからSelectedリストに移動します。

    Create Tableダイアログ
  11. ナビゲーション・パネルで「Partition Definitions」を選択し、AddAddアイコン」をクリックします。

    Create Tableダイアログ
  12. Partition Detailsセクションで、名前としてORDERS_PRE_2007を、値としてTO_DATE('01/01/2007', 'MM/DD/YYYY')を入力します。

    Create Tableダイアログ
  13. AddAddアイコン」をクリックして、2番目のパーティションの定義を追加します。 名前としてORDERS_2007を、値としてTO_DATE('01/01/2008', 'MM/DD/YYYY')を入力します。 .

    Create Tableダイアログ

    OK」をクリックします。

  14. Save AllSave Allアイコン」をクリックして作業内容を保存します。

  15. アプリケーション・ナビゲータに、作成した新規のORDERS表が表示されます。

    アプリケーション・ナビゲータ
  16. アプリケーション・ナビゲータからダイアグラム上に「ORDERS」をドラッグします。

    アプリケーション・ナビゲータとダイアグラム

    Edit Table PropertiesダイアログでOrders表とPersons表の間に外部キーを定義した後は、Orders表をダイアグラム上にドロップすると、自動的に外部キーが描画されます。

  17. 表と索引の両方で、レンジ、ハッシュ、リスト、複合レンジ-ハッシュ、レンジ-リストの各パーティション化がサポートされています。 Show more or less詳細表示

ステップ7: データベース・ユーザーとデータベース接続の作成

接続の詳細がわかっている任意のデータベースに接続できます。 DBA権限を持つユーザーとして接続できる場合は、このステップの手順に従ってIDEデータベース接続を作成し、DBDEMOという名前の新規データベース・ユーザーを作成します。


DBA権限がない場合は、以降の手順で指定するものと同じロールとSystem権限を持つDBDEMOデータベース・ユーザーをDBAに作成してもらい、パスワードと接続の詳細を教えてもらってください。Show more or less詳細表示
  1. メイン・メニューから、「File」→「New」の順に選択してNew Galleryを開きます。 「General」→「Connections」→「Database Connection」の順に選択します。

    New Gallery

    OK」をクリックします。

  2. DBA権限を持つユーザーとして接続できる場合は、ステップ3から14に従ってIDEデータベース接続を作成し、DBDEMOという名前の新規データベース・ユーザーを作成します。 DBA権限がない場合は、このチュートリアルで指定するのと同じロールとSystem権限を持つDBDEMOデータベース・ユーザーをDBAに作成してもらってください。 作成してもらったら、ステップ16に進んでDBDEMO接続を作成します。

  3. Create Database Connectionダイアログで、「IDE Connections」がCreate Connection Inオプションとして選択されていない場合は選択します。

    Create Database Connectionダイアログ
  4. 接続名にTutorialConnと入力し、接続タイプを選択します。 続いて、データベース接続用のユーザー名とパスワードを入力します。 (DBAに依頼するのではなく自分で)新規のデータベース・ユーザーを作成する場合は、DBA権限が必要です。 「JDBC Driver」を選択し、Host NameSIDまたはService Name、およびJDBC Portを入力します。 使用するドライバが不明の場合は、デフォルト(thin)のままにします。

    Create Database Connectionダイアログ
  5. Test Connection」をクリックして、接続可能であることを確認します。

    Create Database Connectionダイアログ

    接続に成功したら、「OK」をクリックします。

  6. Viewメニュー・オプションから「Database」→「Database Navigator」を選択します。

    メイン・メニューのViewオプション
    IDEデータベース接続を作成し、IDE接続ノードを展開すると、Database Navigatorは次のように表示されます。Show more or less詳細表示
  7. IDE Connections」ノードと、先ほど作成した「TutorialConn」接続ノードを展開します。

    Database Navigator
  8. Other Users」ノードを右クリックして、「Create User」を選択します。

    Database Navigator
  9. Create/Edit Userダイアログで、新規ユーザーの名前に「DBDEMO」と入力し、New PasswordとConfirm Passwordにパスワードを入力します。

    Create/Edit Userダイアログ
  10. Roles」タブをクリックし、CONNECTRESOURCEの各ロールに対して「Granted」を選択します。

    Create/Edit Userダイアログ
  11. System Privileges」タブをクリックし、ALTER ANY SEQUENCEALTER ANY TABLECOMMENT ANY TABLECREATE ANY INDEXCREATE ANY SEQUENCECREATE ANY TABLECREATE ANY TRIGGERCREATE ANY VIEWの各権限に対して「Granted」を選択します。

    Create/Edit Userダイアログ
  12. SQL」タブをクリックし、新規ユーザーを作成するSQLスクリプトを確認して、「Apply」をクリックします。

    Create/Edit Userダイアログ
  13. SQLの実行結果を確認します。

    Create/Edit Userダイアログ

    Close」をクリックします。

  14. メイン・メニューから「File」→「New」を選択します。 New Galleryで、再度「General」→「Connections」→「Database Connection」の順に選択し、先ほど追加したDBDEMOユーザー用のDBDEMO接続を作成します。

    New Gallery

    OK」をクリックします。

  15. 前に追加したDBDEMOユーザー用にDBDEMO接続を作成します。 接続名にDBDEMOConn、ユーザー名にDBDEMOを入力します。 パスワードおよび接続の詳細を入力します (DBAにDBDEMOユーザーを作成してもらった場合は、パスワードおよび接続の詳細をDBAから教えてもらってください)。 「Test Connection」をクリックして、接続可能であることを確認します。

    Create Database Connectionダイアログ

    接続に成功したら、「OK」をクリックします。

  16. DBDEMOデータベース接続を作成すると、Application NavigatorのApplication Resourcesパネルにアプリケーションのリソースとして接続が含まれています。 Show more or less 詳細表示
  17. Save AllSave Allアイコン」をクリックして作業内容を保存します。

ステップ8: DDLスクリプトの生成

Oracle JDeveloperを使用すると、作成したオフライン・オブジェクトのDDLを生成できます。 オブジェクトには、CREATE、REPLACE、またはALTERキーワードと、DDL用のそのほかのオプションが必要かどうかを指定できます。 Generate SQL from Database Objectsウィザードで、DDLを特定のデータベースに直接生成するか、.sqlスクリプトを生成するかを選択できます。

  1. アプリケーション・ナビゲータで、Offline Database SourcesDBOffline1の下にある「DBDEMO」ノードを右クリックし、「Generate」を選択して、Generate SQL from Database Objectsウィザードを起動します。

    コンテキスト・メニューのGenerateオプション
  2. ステップ1で、「Source from project」が選択されていることを確認します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ
  3. ステップ2で、「SQL Script」が選択されていることを確認します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ
  4. ステップ3で、オフライン・データベース・オブジェクトをAvailableリストからSelectedリストに移動します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ

    例に従って操作してきた場合は、Oracle 11gデータベースをエミュレートするデータベース・オブジェクトが作成されているため、すべてのオフライン・データベース・オブジェクトをSelectedリストに移動できます。 Show more or less詳細表示

  5. ステップ4で、「CREATE」が選択されていることを確認します。 「Finish」をクリックすると、DDLスクリプトが生成されます。

    Generate SQL from Database Objectsダイアログ
  6. エディタでscript1.sqlファイルが開きます。

    SQLスクリプトの内容
  7. エディタ・ウィンドウで、ウィンドウの下部にある「SQL Worksheet」タブをクリックします。

    SQL WorksheetのSQLスクリプト
  8. SQL Worksheetのツールバーの右端にあるドロップダウン・リストから、接続「DBDEMOConn」を選択します。

    SQL WorksheetのSQLスクリプト
    SQL Worksheetを使用して、SQL文、PL/SQL文、およびSQL*Plus文を入力して実行できます。 Show more or less詳細表示
  9. Run Script」をクリックして、表示された出力を確認します。

    SQL WorksheetのSQLスクリプト
  10. SQL Worksheetツールバーで、「Commit」をクリックします。

    SQL WorksheetのSQLスクリプトとScript Output
  11. メイン・メニューから「View」→「Database」→「Database Navigator」を選択してDatabase Navigatorを開きます。 「Refresh」ボタンをクリックします。

    Database Navigator
  12. DBDEMO」ノードとそのサブノードをすべて展開し、新しいデータベース・オブジェクトを確認します。

    Database Navigator
    SQLスクリプトを実行すると、SQL WorksheetのScript Outputページに出力が表示されます。 Show more or less詳細表示
ステップ9: データベースのリコンサイル
Oracle JDeveloperでは、オフライン・データベース・オブジェクトの定義とLIVEデータベース・オブジェクトを比較できます。 オフラインで変更した部分をLIVEオブジェクトと視覚的に比較し、ALTERスクリプトを使用して、あるいはオンラインで直接、変更部分を反映させることができます。  
Edit Tableダイアログを使用すると、前に作成したオフライン・オブジェクトを変更し、その変更部分をデータベース内のLIVEオブジェクトと比較できます。 Show more or less詳細表示
  1. アプリケーション・ナビゲータで、Offline Database SourcesDBOffline1DBDEMOの下にある「ADDRESSES」ノードをダブルクリックして、Edit Tableダイアログを開きます。

    アプリケーション・ナビゲータ
  2. Add」をクリックして、新しいデフォルト列を追加します。 名前をTOWNに、VARCHAR2型のサイズを25にそれぞれ変更し、「OK」をクリックします。

    Edit Tableダイアログ
  3. アプリケーション・ナビゲータで「PERSONS」ノードをダブルクリックし、Edit Tableダイアログを開きます。

    アプリケーション・ナビゲータ
  4. Columnsリストで、「GENDER」、「Cannot be NULL」の順に選択します。

    Edit Tableダイアログ
  5. Commentボックスに、3とおりのフラグの(M)ale (F)emale (D)eclined to answerを入力します。

    Edit Tableダイアログ

    OK」をクリックします。

  6. アプリケーション・ナビゲータで、Offline Database Sourcesの下にある「DBOffline1」ノードを右クリックし、「Generate」を選択して、Generate SQL from Database Objectsウィザードを起動します。

    コンテキスト・メニューのGenerateオプション
  7. ステップ1で、「Source from project」が選択されていることを確認します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ
  8. ステップ2で、「SQL Script」が選択されていることを確認します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ
  9. ステップ3で、PERSONSADDRESSESをAvailableリストからSelectedリストに移動します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ
  10. ステップ4で、「ALTER」と「Manual Reconcile」を選択します。 DBDEMOが選択した接続であることを確認します。 「Next」をクリックします。

    Generate SQL from Database Objectsダイアログ
    ALTERおよびManual Reconcileを使用すると、オフライン・オブジェクトの定義とデータベース内のオブジェクト定義の違いを確認できます。Show more or less詳細表示

    相違部分を右側のパネルに移動することで、生成されるDDLにその相違部分を反映させるように指定します。 テキスト部分を変更した場合は(たとえば、この例のようにGENDER列のコメントを追加した場合)、当該テキスト・ノードを選択するとCompare Textボタンが使用可能となり、テキスト全体を比較できます。
  11. ステップ5では、左側のパネルで強調表示されている「PERSONS」ノードと「ADDRESSES」ノードを展開し、相違部分を確認します。

    Generate SQL from Database Objectsダイアログ
  12. 相違部分を右側のオンラインDBDEMOユーザーに移動します。

    Generate SQL from Database Objectsダイアログ
  13. Finish」をクリックすると、DDLスクリプトが生成されます。

    Generate SQL from Database Objectsダイアログ
  14. ウィザードが終了すると、アプリケーション・ナビゲータ内のDBOffline1ノードに新規スクリプトscript2.sqlが表示されます。

    アプリケーション・ナビゲータ
  15. SQL Worksheetのソース・エディタでファイルを開きます。

    SQL Worksheet
  16. Save AllSave Allアイコン」をクリックして作業内容を保存します。

ステップ10: データベース・オブジェクトのリバース・エンジニアリング

大半のアプリケーション開発プロジェクトでは、既存のデータベースが出発点になります。 Oracle JDeveloperを使用すると、データベース内の既存のオブジェクトをアプリケーション内にリバース・エンジニアリングで取り込むことができます。 取り込んだオブジェクトをもとに新規のオフライン定義を編集、削除、作成してから、新規のSQLスクリプトを生成します。

データベースからリバース・エンジニアリングすることのもう1つの利点は、既存のスキーマをダイアグラムとして視覚化できることです。 Show more or less詳細表示
  1. アプリケーション・ナビゲータ・ドロップダウン・メニューをクリックし、コンテキスト・メニューから「New Project」を選択します。

    アプリケーション・ナビゲータ
  2. New Galleryで、「General」→「Projects」→「Database Project」を選択します。

    New Gallery
  3. プロジェクト名としてDBRevEngを入力します。

    New Gallery

    Finish」をクリックします。

  4. アプリケーション・ナビゲータで、「DBRevEng」プロジェクトを右クリックして、コンテキスト・メニューから「New」を選択します。

    アプリケーション・ナビゲータ
  5. New Galleryで「Database Tier」→「Offline Database Objects」→「Copy Database Objects to a Project」を選択します。

    New Gallery

    OK」をクリックします。

  6. Copy Database Objects to a Projectダイアログのステップ1で、先ほど作成したアプリケーション接続、「DBDemoConn」が、ドロップダウン・リストで選択されていることを確認します。

    Copy Database Objects to a Projectダイアログ

    Next」をクリックします。

  7. ステップ2で、Offline Databaseフィールドの右側にある「New」ボタンをクリックして、新規のオフライン・データベースを作成します。

    Copy Database Objects to a Projectダイアログ
  8. データベース名としてDBDemoReverse、デフォルト・スキーマとしてDBDEMOを入力します。

    Create Offline Databaseダイアログ

    OK」をクリックします。 「Next」をクリックします。

  9. ステップ3で、「Query」をクリックして、使用可能なすべてのデータベース・オブジェクトを表示します。 データベース・オブジェクトをAvailableリストからSelectedリストに移動します。

    Copy Database Objects to a Projectダイアログ

    Next」に続いて「Finish」をクリックすると、データベース・オブジェクトが生成されます。

  10. 生成されたオブジェクトはアプリケーション・ナビゲータ内に表示されます。

    アプリケーション・ナビゲータ

    新規のデータベース・ダイアグラムを作成し、生成されたオブジェクトをそこに追加します。

  11. アプリケーション・ナビゲータで、「DBRevEng」プロジェクトを右クリックして、コンテキスト・メニューから「New」を選択します。

    アプリケーション・ナビゲータ
  12. New Galleryで「Database Tier」→「Offline Database Objects」→「Database Diagram」を選択します。

    New Gallery

    OK」をクリックします。

  13. ダイアグラム名としてDBOffline2と入力し、パッケージ名としてoracleが入力されていることを確認します。

    Create Database Diagramダイアログ

    OK」をクリックします。

  14. アプリケーション・ナビゲータで、プロジェクトにリバース・エンジニアリングされたすべての生成済みオブジェクト(データベース・ダイアグラムに表示されないトリガー以外)を選択し、ダイアグラム上にドラッグ・アンド・ドロップします。

    アプリケーション・ナビゲータとダイアグラム
  15. 新しいデータベース・ダイアグラムには、リバース・エンジニアリングされたオブジェクトが表示されます。これらはプロジェクトに生成された後でダイアグラム上にドラッグされたオブジェクトです。

    Databaseダイアグラム

    次に示す方法でも、最終的には同じ結果になります。 Show more or less詳細表示
  16. Save AllSave Allアイコン」をクリックして作業内容を保存します。

これでこのチュートリアルは完了です。

まとめ
このチュートリアルでは、Oracle JDeveloperを使用して次のことを実行しました。 データベース開発の詳細については、次のWebサイトを参照してください。

Bookmark Print すべて表示 | すべて非表示
トップへ戻る

このページはお役に立ちましたでしょうか。



Copyright © 2011, Oracle and/or its affiliates. All rights reserved.?