USER MANUALS

基本ビューのスキーマの表示

基本ビューを開いてそのスキーマを表示するには、[Server Explorer] でビューをダブルクリックします。[Edit] をクリックすると、ビューを変更できます。

“Edit view” dialog of a base view

基本ビューの [Edit view] ダイアログ

このダイアログでは、以下の処理を実行できます。

  • ビューの名前を変更する。

  • ビューのフィールド名を変更する。

  • ビューのフィールドの型を変更する。

  • ビューのプライマリキーを定義する。そのためには、プライマリキーを形成する各フィールドの型の横にあるチェックボックスをチェックして、[Set selected as PK] をクリックします。それらのフィールドに image1 アイコンが表示されます。現在のプライマリキー定義を削除するには、すべてのチェックボックスのチェックをはずして、[Set selected as PK] をクリックします。Design Studio で、[PK] 列の鍵アイコンをクリックします。

  • フィールドの「ソース型プロパティ」を編集する。そのためには image2 ボタンをクリックします。詳細については、後述の「 ソース型プロパティ 」を参照してください。

  • フィールドに説明を追加する。そのためには [Description] 列の image2 ボタンをクリックします。

    基本ビューのフィールドの説明は、その派生ビューに伝播します。フィールドの説明を変更すると、その変更はこのフィールドを投影するすべての派生ビューに伝播します。

    たとえば、以下のビューを作成したとします。

    1. F1 フィールドがある基本ビュー BV1。

    2. 基本ビュー BV1 から作成した選択ビュー V2。

    3. V2 から作成した選択ビュー V3。

    4. V3 から作成した選択ビュー V4。

    基本ビュー BV1 で F1 フィールドの説明を設定すると、その変更は、V2、V3、および V4 の各ビューの F1 フィールドに伝播します。

    次に、ビュー V3 で F1 の説明を変更すると、その変更は V4 に伝播します。

    次に、ビュー BV1 で F1 の説明を変更すると、この変更は V2 には伝播しますが、V3 と V4 には伝播しません。これは、V3 で F1 フィールドの説明を明示的に変更しているからです。

    フィールドの説明は以下の方法で取得できます。

ビューの編集のほか、以下の操作もできます。

  • Execute: [Execute view] ダイアログが開きます。このダイアログでは、デフォルトのクエリ select * from viewname の実行や、 WHERE 句への条件の追加ができます。クエリの実行の詳細については、「 ビューに対するクエリの実行 」を参照してください。

  • Drop: ビューを削除します。そのビューを使用している派生ビューが存在する場合、それらのビューも削除されます。

  • VQL: ビューを作成するために生成された VQL コードを表示します。「 エレメントの VQL の表示 」を参照してください。

  • Options: ビューの設定を変更するダイアログが開きます。「 マテリアライズドテーブル 」を参照してください。

  • Properties: ビューに関する情報を表示します。所有者、最終変更者、作成日、変更日、キャッシュステータスなどがあります。

  • Associations: このビューが関連しているアソシエーションのリストを表示するダイアログが開きます。「 アソシエーション 」を参照してください。

  • Used by...: 現在のビューに依存するビューを示す図を表示します。「 Used By... 」を参照してください。

  • Create: 現在のビューから派生した新しいビューを作成します。「 派生ビューの作成 」を参照してください。

  • Publish: ビューを SOAP Web サービスまたは RESTful Web サービスとして公開する Web サービスウィザードが開きます。「 Web サービスの公開 」を参照してください。

  • Edit Remote (リモートテーブル から作成した基本ビューでのみ使用可能): リモートテーブルのダイアログ が開きます。

  • Refresh data (リモートテーブル から作成した基本ビューでのみ使用可能): データ更新のダイアログ が開きます。

  • Ctrl+F: フィールドを検索します。

Schema of the base view phone\_inc

基本ビュー phone_inc のスキーマ

Schema of the base view internet\_inc

基本ビュー internet_inc のスキーマ

エレメントの VQL の表示

[VQL] ボタンを持つダイアログがいくつかあり、そのボタンをクリックすると、エレメントの VQL が表示されます。以下のダイアログでこのボタンを使用できます。

  • データソースのダイアログ

  • ビューのスキーマを表示するダイアログ

  • SOAP Web サービスまたは REST Web サービスを作成および編集するダイアログ

  • その他...

以下のダイアログでは、ビューを作成するために生成された VQL コードが表示されています。

VQL of the base view internet_inc

基本ビュー internet_inc の VQL

以下の各オプションで、ビューの VQL コードの生成方法を制御します。

  • Show dependencies: チェックしている場合、ビューを作成する VQL コードとビューが依存するエレメントを作成する VQL コードが表示されます。チェックしていない場合は、ビューを作成するコードのみが表示され、ビューが依存するエレメントを作成するコードは表示されません。たとえば、ビューの VQL を表示して、このオプションをチェックすると、このビューが依存するデータソースを作成する VQL コードが表示されます。

  • Include statistics (ビューの場合のみ): 選択している場合、ビューに使用するために収集された統計を再作成するステートメントが表示されます。

  • Drop elements before creating them: 選択している場合、すべての CREATE... ステートメントの前に DROP... CASCADE ステートメントが実行されます。したがって、指定の名前のエレメントがあれば、生成された VQL コードによって、そのエレメントおよびそれに依存するすべてのエレメントが削除されます。

    たとえば、サーバーで JDBC データソース ds_jdbc_acme をインポートする場合、まず既存の JDBC データソース ds_jdbc_acme が削除され、つづいてそのデータソースに依存するすべてのビューが削除されます。

  • Replace existing elements**: 選択している場合、エレメントを作成するステートメントは CREATE OR REPLACE... のようになります。その結果、生成される VQL コードでは、その CREATE ステートメントで作成するエレメントに依存するエレメントは削除されません。

    たとえば、LDAP データソース ds_ldap_activedirectory をインポートする場合、サーバーにその名前の LDAP データソースが存在すれば、Virtual DataPort サーバーによって既存のデータソースが新しいデータソースで置き換えられますが、既存のデータソースに依存するビューは変更も削除もされません。

  • Do not replace existing elements: 選択している場合、エレメントを作成するステートメントは CREATE... のようになります。その結果、指定の名前と型のエレメントが存在すると、既存のエレメントが置き換えられることも削除されることもなく、そのステートメントは失敗します。

すべての VQL ステートメントをクリップボードにコピーするには、 Ctrl+A キーを押して、[Copy] をクリックします。Design Studio を使用している場合は、[Copy to Clipboard] をクリックします。

[Word wrap] をチェックしている場合、長すぎて 1 行に収まらない行は、単語の境界 (空白文字) で折り返されます。

派生ビューの VQL の編集

(基本ビューではなく) 派生ビューの [VQL] パネルから、ビューを作成する VQL ステートメントを手動で編集することにより、ビューの定義を手動で変更できます。これを行うには、[Edit view] ダイアログに移動しないで、 image2 をクリックします。ビューの VQL を変更して [Save] をクリックすると、新しいステートメントでビューが再作成されます。

ビューの VQL を手動で変更する際、以下の点を考慮してください。

  1. このダイアログでビューの VQL を変更する場合、VQL ステートメントの書式設定も維持されます。つまり、空白、キャリッジリターンなどは維持されます。

  2. ビューの VQL ステートメントに SQL コメントを追加できます。コメントは、 SELECT 句の後および最初のステートメントの最後に記述する必要があります (クエリに CONTEXT 句がある場合、この句の後にはコメントを記述しないでください)。以下に例を示します。

    CREATE OR REPLACE VIEW top_customer_by_region AS
    SELECT...
    -- Single-line comment
    ... FROM
    
    /*
       Multi-line
       comment
    */
    
    ;
    

    クエリのこの部分以外の場所にコメントを記述した場合、そのコメントは保存されません。

  3. 後で [Edit view] ダイアログでビューを編集した場合、これらの変更はすべて失われます (変更が失われる前に警告が表示されます)。

  4. このダイアログでビューの VQL を変更した後、ビューの VQL ステートメントの最後に、CONTEXT ('formatted' = 'yes') が追加されます。この構成により、Virtual DataPort はビューの書式設定を保存します。

    デフォルトでは、VQL Shell から派生ビューを作成/変更した場合、VQL ステートメントの書式は維持されません。書式を維持するには、 CREATE VIEW ステートメントに CONTEXT ('formatted' = 'yes') を追加します。これにより、書式を維持するために VQL パネルでビューを編集する必要がなくなります。

Used By...

このダイアログには、現在のビューに依存するすべてのビューを示す図が表示されます。左側には、現在のビューを定義で使用している最上位ビューのリストが表示されます。最上位ビューとは、他のどのビューの定義でも使用されていないビューです。ここでいずれかのビューをクリックすると、その構成が表示され、ダイアログの右側で以下の操作を実行できます。

  • ツリーの中で組み合わせ操作 (結合、和結合、選択など) を表すノードをクリックして、その主なプロパティを表示する。

  • データソースをクリックして、その詳細を表示する。

  • ビューまたは基本ビューをクリックして、そのスキーマを表示したダイアログを開く。

  • [Save image] をクリックして、現在の「ツリー」を画像ファイルにエクスポートする。

ソース型プロパティ

フィールドの「ソース型プロパティ」は、ソースにおけるそのフィールドの正確な型、およびその型に応じてフィールドの長さと小数点以下桁数を定義します。派生ビューでは、派生フィールドのプロパティも定義できます。

たとえば、あるフィールドの型が「text」であるとします。このフィールドが JDBC の基本ビューに属する場合、たとえば、データベースにおけるこのフィールドのソース型は、「VARCHAR」、「CHAR」、「LONGVARCHAR」、「NVARCHAR」などになります。

管理ツールでは、ビューのフィールドの「ソース型プロパティ」は、ビューのスキーマを表示するダイアログで、フィールドのヒントに表示されます。

JDBC の基本ビューと ODBC の基本ビューでは、ソース型プロパティがデータベースから自動的にインポートされます。他のタイプの基本ビューの場合および派生ビューで定義されている (基本ビューから伝播しない) フィールドの場合は、[Edit View] ダイアログで手動で定義する必要があります。カスタムデータソースを開発する API でも、ソースから返されるフィールドのソース型プロパティを示すことができます。

ソース型プロパティを使用して、以下の 2 つの操作を実行します。

  1. ビューに対してキャッシュを有効にしている場合、Virtual DataPort サーバーでは、ビューのフィールドのソース型プロパティを使用して、キャッシュしたデータを保存するテーブルを定義します。これにより、このビューのキャッシュにデータをロードして、そこからデータを取得する処理が速くなる可能性があります。

    たとえば、フィールドの型が text であり、ソース型プロパティが未定義の場合 (JSON の基本ビューの場合など)、キャッシュエンジンによって、このフィールドの値が VARCHAR 型の列に保存されます。フィールドが長さ 3 の CHAR 型であることがソース型プロパティで示されている場合、キャッシュエンジンによって、このフィールド用に CHAR(3) 型の列が作成されます。これにより、多くの場合、データベースでこのフィールドの値を保存するために使用する容量が削減され、これらの値を保存および取得する処理が速くなります。

  2. ビューのフィールドのメタデータは、JDBC または ODBC を経由して Virtual DataPort に接続するクライアントで共有されます。ソース型プロパティを定義していれば、より正確なメタデータを共有できます。

Add feedback