第10章 モデルオブジェクトの作成および編集
10.1. 新しいモデルオブジェクトの作成 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
10.1.1. 新しいモデルオブジェクトの作成 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
本項では、モデルに含まれた既存のモデルオブジェクトを作成および編集する Teiid Designer の機能について説明します。 Teiid Designer は、さまざまなタイプのメタデータをモデル化するフレームワークを提供します。各メタモデルタイプは、どこに何を作成できるかを制約する親子の関係のセットを持ちます。たとえば、保存されたプロシージャーに列属性を作成することはできず、Web サービス演算の出力メッセージでマッピングクラスを作成することもできません。
Teiid Designer は、これらのモデルの新しい子と孫を作成する共通のアクションのセットを提供します。
以下のアクションを使用すると、モデルエクスプローラービュー、ダイアグラムエディター、またはテーブルエディターで新しいモデルオブジェクトを直接作成できます。
- New Child アクション
- New Sibling アクション
- New Association Action (新規の関連アクション)
10.1.2. New Child アクション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
モデルエクスプローラービューでモデルオブジェクトの子を新たに作成するには、以下を行います。
- 子を追加する親オブジェクトを選択します。たとえば、パッケージをパッケージに追加したり、属性をクラスに追加したりすることができます。
- コンテナーオブジェクトを右クリックします。ポップアップメニューの New Child をクリックします。その後、追加する子オブジェクトを選択できます。
図10.1 モデルエクスプローラーの New Child アクション
- 新しいモデルオブジェクトがモデルエクスプローラービューに表示され、名前を変更するためにハイライトされます。
図10.2 エクスプローラーの新しいモデルオブジェクト
ダイアグラムエディターでモデルオブジェクトの子を新規作成するには、以下を行います。
- 子を追加する親オブジェクトを選択します。たとえば、パッケージをパッケージに追加したり、属性をクラスに追加したりすることができます。
- コンテナーオブジェクトを右クリックします。ポップアップメニューの New Child をクリックします。その後、追加する子オブジェクトを選択できます。
図10.3 ダイアグラムでの New Child アクション
- 新しいモデルオブジェクトがダイアグラムに表示され、名前を変更するためにハイライトされます。
図10.4 ダイアグラムの新しいモデルオブジェクト
テーブルエディターでモデルオブジェクトの子を新規作成するには、以下を行います。
- 子を追加する親オブジェクトの行を選択します。たとえば、列を追加する場合は Base Table タブをクリックし、ベーステーブル行を選択します。
- テーブル行を右クリックします。ポップアップメニューの New Child をクリックします。その後、追加する子オブジェクトを選択できます。
図10.5 テーブルエディターの New Child アクション
- テーブルエディターで選択されたタブが子オブジェクトタイプのタブに変更されます。新しいモデルオブジェクト行が表示され、名前を変更するために行の名前テーブルセルがハイライトされます。
10.1.3. New Sibling アクション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
モデルエクスプローラービューでモデルオブジェクトの兄弟を新たに作成するには、以下を行います。
- 兄弟を追加するオブジェクトを選択します。たとえば、列に列の兄弟を追加できます。
- そのオブジェクトを右クリックします。ポップアップメニューの New Sibling をクリックします。その後、追加する兄弟オブジェクトを選択できます。
図10.6 モデルエクスプローラーの New Sibling アクション
- 新しいモデルオブジェクトがモデルエクスプローラービューに表示され、名前を変更するためにハイライトされます。
ダイアグラムエディターでモデルオブジェクトの兄弟を新規作成するには、以下を行います。
- 兄弟を追加するオブジェクトを選択します。たとえば、列に列の兄弟を追加できます。
- そのオブジェクトを右クリックします。ポップアップメニューの New Sibling をクリックします。その後、追加する兄弟オブジェクトを選択できます。
図10.7 ダイアグラムでの New Sibling アクション
- 新しいモデルオブジェクトがダイアグラムに表示され、名前を変更するためにハイライトされます。
テーブルエディターセクションでモデルオブジェクトの兄弟を新規作成するには、以下を行います。
- 兄弟を追加するオブジェクトの行を選択します。たとえば、列に列の兄弟を追加できます。
- 行を右クリックします。ポップアップメニューの New Sibling をクリックします。その後、追加する兄弟オブジェクトを選択できます。
図10.8 テーブルエディターの New Sibling アクション
- テーブルエディターで選択されたタブが子オブジェクトタイプのタブに変更されます。新しいモデルオブジェクト行が表示され、名前を変更するために行の名前テーブルセルがハイライトされます。
10.1.4. New Association Action (新規の関連アクション) リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
モデルエクスプローラービューでモデルオブジェクト間の関係を新規作成するには、以下を行います。
- 関連付ける 2 つのオブジェクトを選択します。たとえば、異なるベーステーブルの列を選択します。
- 右クリックします。ポップアップメニューで New Association > Foreign Key Relationship とクリックします。
図10.9 モデルエクスプローラーの New Association アクション
- ダイアグラムに新しい関係のリンクが表示されます。
図10.10 ダイアグラムの新しい関係
ダイアグラムエディターでモデルオブジェクト間の関係を新規作成するには、以下を行います。
- 関連付ける 2 つのオブジェクトを選択します。たとえば、異なるベーステーブルの列を選択します。
- 右クリックします。ポップアップメニューで New Association > Foreign Key Relationship とクリックします。
- ダイアグラムに新しい関係のリンクが表示されます。Column、Foreign Key、および Primary Key 参照プロパティーが選択された列、新しいプライマリーキー、および新しい外部キーに適切に設定されます。
- テーブルで列を選択します。
- 列を別のテーブルにドラッグします。列をこの列にドラッグおよびドロップします。ドロップ先の列は黄色でハイライトされます。
- ダイアグラムに新しい関係のリンクが表示されます。Column、Foreign Key、および Primary Key 参照プロパティーが選択された列、新しいプライマリーキー、および新しい外部キーに適切に設定されます。
テーブルエディターでモデルオブジェクト間の関係を新規作成するには、以下を行います。
- 関連付ける 2 つのオブジェクトを選択します。たとえば、異なるベーステーブルの列を選択します。
- 右クリックします。ポップアップメニューで New Association > Foreign Key Relationship と選択します。
- 新しい Foreign Key および Primary Key オブジェクトは、テーブルエディターのそれぞれに対応する内容に追加されます。Column、Foreign Key、および Primary Key 参照プロパティーが選択された列、新しいプライマリーキー、および新しい外部キーに適切に設定されます。
10.1.5. 新規モデルオブジェクトのウィザード リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Teiid Designer は、ビューおよびソースリレーショナルモデルの子 (テーブル、ビュー、プロシージャー、およびインデックス) の New Child および New Sibling ウィザードを提供します。
- Create Relational Table Wizard では、列、一意キー、外部キーの定義およびインデックスを含む完全なリレーショナルテーブルを作成できます。
注記
リレーショナルビューウィザードはリレーショナルテーブルウィザードと全く同じです。 - Create Relational Procedure Wizard では、列、一意キー、外部キーの定義およびインデックスを含む完全なリレーショナルプロシージャーを作成できます。リレーショナルプロシージャーオブジェクトは、標準的なプロシージャーやソース関数 (プッシュダウン関数) を含む異なるタイプのプロシージャーを表すことができます。 - アクションが開始されると、最初のダイアログでプロシージャータイプをオプションで選択できます。
注記
ユーザー定義の関数をビューモデルでモデル化できます。ウィザードの 2 つ目のダイアログでは、選択したタイプに基づいて Create Relation Procedure ダイアログをカスタマイズします。ソース関数は、データベースにすでにデプロイされ、アクセス可能になっているプロシージャーです。リレーショナルモデルのソース関数を定義すると、変換 SQL 内からこれらの関数を呼び出すことができ、関数は実行のためにデータベースにプッシュされます。 - Create Relational Index Wizard: インデックスはリレーショナルテーブルオブジェクトと同時に作成できます。また - アクションおよびダイアログでも作成できます。
- Create View Model Objects Wizards: ビューモデルでは、テーブル、プロシージャー (標準のプロシージャーおよびユーザー定義の関数) およびインデックスのみを作成できます。ビューテーブルおよびプロシージャーでは、ウィザードの主な違いは SQL 変換タブが含まれていることです。
- Create User Defined Functions Wizard: カスタム関数をタイプ「function」のビューモデルプロシージャーとして定義できます。ビューモデルに対して - と選択すると、最初のダイアログで標準のビュープロシージャーまたはユーザー定義の関数のいずれかが含まれるプロシージャータイプをオプションで選択できます。ユーザー定義の関数には、Java クラス、メソッド、コードが含まれる jar ファイルへのパスなどの追加のプロパティーが必要になります。