IntelliJプラグインを使用した表の管理

IntelliJからデータ・ストア内に表を作成し表データを表示する方法について学習します。

Oracle NoSQL Databaseに接続したら、Oracle NoSQL Java SDKとともにダウンロードされたサンプルを実行して、サンプル表を作成できます。IntelliJプラグインを使用すると、表とそのデータをスキーマ・エクスプローラ・ウィンドウで表示できます。
サンプル・プログラムを実行するには、次の手順を実行します。
  1. Oracle NoSQL Databaseに接続されているNoSQLプロジェクトを開きます。
  2. 「Project Explorer」ウィンドウでBasicTableExampleを探してクリックします。これは、examplesフォルダのoracle-nosql-java-sdkにあります。コードを調べると、このプログラムでは、audienceDataという表を作成し、この表に2つの行を配置し、挿入された行を問い合せて削除し、最後にaudienceData表を削除していることがわかります。
  3. 必要な引数を渡すには、「Run」「Edit Configurations」をクリックします。次のプログラム引数を入力し、「OK」をクリックします。

    表1-2 プログラム引数

    プログラム引数 詳細情報
    http://<proxy_host>:<proxy_http_port> -useKVProxy たとえば、プロキシURLがhttp://<proxy_host>:8080である場合、プログラム引数はhttp://<proxy_host>:8080 -useKVProxyとする必要があります。
  4. このプログラムを実行するには、「Run」「Run 'BasicExampleTable'」をクリックするか、[Shift]+[10]を押します。
  5. 端末内のログを調べて、コードが正常に実行されたことを確認します。表の作成、行の挿入などを示すメッセージが表示されます。

    ヒント:

    BasicExampleTableにより、挿入された行が削除され、audienceData表が削除されると、その表をスキーマ・エクスプローラで表示できなくなります。スキーマ・エクスプローラで表を表示する場合は、挿入された行を削除して表を削除するコードをコメント化してから、プログラムを再実行してください。
  6. 表とそのデータを表示するには、次の手順を実行します。
    1. スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
    2. 該当するテナント識別子の下位にあるaudienceData表を探し、その列、主キーおよびシャード・キーの詳細を表示します。
    3. 表名をダブルクリックしてそのデータを表示します。または、表を右クリックして「Browse Table」を選択します。
    4. レコード・ビューア・ウィンドウがメイン・エディタに表示されます。「Execute」をクリックして問合せを実行し、表データを表示します。
    5. 個々のセル・データを個別に表示するには、セルをダブルクリックします。

IntelliJを使用したDDL操作の実行

IntelliJを使用してDDL操作を実行できます。

IntelliJプラグイン内から実行できるDDL操作の一部を次に示します。

CREATE TABLE

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 接続名を右クリックし、「Create Table」を選択します。
  • プロンプトで、新しい表の詳細を入力します。Oracle NoSQL Database表は、次の2つのモードで作成できます。
    • **シンプルなDDL入力**: このモードを使用すると、表を宣言的に、つまりDDL文を記述せずに作成できます。
    • **拡張DDL入力**: このモードを使用すると、DDL文を使用して表を作成できます。
  • 作成前にDDL文を表示するオプションがあります。「Show DDL」をクリックすると、「Simple DDL input」モードのフィールドに入力された値に基づいて形成されたDDL文が表示されます。このDDL文は、「Create」をクリックすると実行されます。
  • 「Create」をクリックして、表を作成します。
  • 子表を作成するには、目的の表を右クリックし、「Create Child Table」を選択します。子表は、次の2つのモードで作成できます:
    • **シンプルなDDL入力**: このモードを使用すると、他の必要な詳細とともに表名を入力するだけで、子表を作成できます。
    • **拡張DDL入力**: このモードを使用すると、DDL文を使用して子表を作成できます。

    子表の詳細は、開発者ガイド表階層を参照してください。

  • 「Create」をクリックして、子表を作成します。
  • 表の作成後にDDL文を表示するオプションがあります。既存の表を右クリックします。「View Table DDL」を選択します。DDL文をコピーするには、「Copy to Clipboard」をクリックします。「OK」をクリックしてダイアログ・ボックスを閉じます。

DROP TABLE

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 削除する表を右クリックします。「Drop Table」を選択します。
  • 確認ウィンドウが表示され、「Ok」をクリックして削除アクションを確定します。

CREATE INDEX

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 索引を作成する表を右クリックします。「Create Index」を選択します。
  • 「Create Index」パネルには、2つのモードで索引を作成するオプションがあります:
    • **フォーム・ベース索引作成(シンプルなDDL入力)** : DDL文を記述せずに索引を作成するための詳細を入力します。索引の名前および索引に含める列を指定します。列がJSONデータ型である場合、「JSON Path to Index Field」という追加フィールドが表示されます。JSONフィールドの場所へのパスを入力し、そのデータ型を選択します。
    • **索引をDDL文として作成(拡張DDL入力の場合)**: 索引を作成するための有効なDDL文を入力します。複合データ型(配列、マップ、レコード)を含めることもできます。
  • 「Add Index」をクリックします。

DROP INDEX

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • リストされた列、主キー、索引およびシャード・キーを表示するには、ターゲット表をクリックします。
  • 削除する必要があるtarget-indexを見つけて右クリックします。「Drop Index」をクリックします。
  • 確認ウィンドウが表示され、「Ok」をクリックして削除アクションを確定します。

ADD COLUMN

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 列を追加する必要がある表を右クリックします。「Add Column」を選択します。
  • 新しいCOLUMNは、次の2つのモードで追加できます。
    • シンプルなDDL入力: このモードを使用すると、DDL文を記述せずに新しい列を追加できます。バイナリまたは固定バイナリの場合は、データ型として「Binary」を選択します。固定バイナリの場合は、「Size」フィールドにファイルのサイズを入力し、バイナリ・データ型の場合はフィールドをnullのままにします。
    • 拡張DDL入力: このモードを使用すると、有効なDDL文を指定して表に新しい列を追加できます。このモードでは、複合データ型の列を作成することもできます。たとえば、配列、マップまたはレコード、さらにはネストされた形式です。
  • どちらのモードでも、列の名前を指定し、そのプロパティ(データ型、デフォルト値およびNULL値可能かどうか)を使用して列を定義します。
  • 「Add Column」をクリックします。

DROP COLUMN

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • リストされた列、主キー、索引およびシャード・キーを表示するには、ターゲット表をクリックします。
  • 削除する必要があるターゲット列を見つけて右クリックします。「Drop Column」をクリックします。
  • 確認ウィンドウが表示され、「Ok」をクリックして削除アクションを確定します。

EXECUTE DDL

「Execute DDL」オプションを使用して、任意の表固有のDDL文、およびネームスペース、リージョンおよびロールの管理などの表に依存しない操作を実行できます。
  1. スキーマ・エクスプローラで「Execute」アイコン(三角形)をクリックして、「Execute DDL」ウィンドウを開きます。または、接続名を右クリックして「Execute DDL」を選択することもできます。
  2. 新しいウィンドウで、システム・リクエストであるSQL文を入力します(リージョン/ロール/ネームスペースの作成または削除など)。「Execute」をクリックします。DDLの結果がウィンドウの下部に表示されます。

    ノート:

    このウィンドウから、CREATE TABLEなどの他のDDL操作を実行することもできます。
「Execute DDL」を使用してサポートされる操作:
  • ネームスペースの作成: 1つ以上のネームスペースをストアに追加したり、ストア内に表を作成したり、ユーザーにネームスペースや表にアクセスする権限を付与したりできます。次に例を示します。
    CREATE NAMESPACE ns1
  • リモート・リージョンの作成: 複数リージョンNoSQL Database内の各ローカル・リージョンからリモート・リージョンを作成できます。次に例を示します。
    CREATE REGION fra
  • ローカル・リージョンの追加: 複数リージョンNoSQL Database内のローカル・リージョンに名前を設定できます。次に例を示します。
    SET LOCAL REGION lnd
  • リージョンの削除: リージョンを削除できます。次に例を示します。
    DROP REGION fra
  • オンプレミスの複数リージョン表の作成: データ・ストアにオンプレミスの複数リージョン表を作成し、表が網羅するリージョンのリストを指定できます。また、リージョンを追加して複数リージョン表を拡張したり、既存のリージョンから表を削除して複数リージョン表を縮小したりできます。
    例: 複数リージョン表の作成
    CREATE TABLE users(id INTEGER, name STRING, team STRING,
    PRIMARY KEY(id))IN REGIONS fra,lnd
    例: 複数リージョン表の拡張
    CREATE REGION dub;
    ALTER TABLE users ADD REGIONS dub;
    例: 複数リージョン表の縮小
    ALTER TABLE users DROP REGIONS dub;

ノート:

IntelliJプラグインを使用して複数リージョン表を作成/拡張または縮小する前に、複数リージョン・データ・ストアを構成するためのすべてのタスクを完了する必要があります。これには、データ・ストアのデプロイ、XRegionサービスの構成、XRegionエージェントの起動、プロキシの実行が含まれます。詳細は、「複数リージョン・データ・ストアの構成」を参照してください。

IntelliJを使用したDML操作の実行

IntelliJプラグインを使用して、表からデータの追加、既存データの変更およびデータの問合せを実行できます。

データの挿入

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 行を挿入する必要がある表を右クリックします。「Insert Row」を選択します。
  • 「Insert Row」パネルで、新しい行を挿入するための詳細を入力します。新しいROWを2つのモードで挿入できます。
    • シンプルな入力: このモードを使用すると、DML文を記述せずに新しい行を挿入できます。ここでは、フォーム・ベースの行フィールドのエントリがロードされ、行のすべてのフィールドの値を入力できます。
      • バイナリ・データ型の場合、入力する文字列はバイナリ値の有効なBase64エンコーディングである必要があります。または、目的の列にアップロードするファイルを選択してください。
      • 固定バイナリ・データ型の場合、入力する文字列はバイナリ値の有効なBase64エンコーディングである必要があります。または、特定の列の作成時に定義されたサイズのファイルをアップロードしてください。

      ノート:

      バイナリ・データ型用としてアップロードするファイル形式は、.bin拡張子のみである必要があります。
    • 拡張JSON入力: このモードを使用すると、列名と対応する値をキーと値のペアとして含むJSONオブジェクトを指定することで、新しい行を表に挿入できます。入力は、複合データ型(配列、マップ、レコード)にすることもできます。
  • 「Insert Row」をクリックします。

データの変更 - UPDATE ROW/DELETE ROW

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 行を挿入する必要がある表を右クリックします。「Browse Table」を選択します。
  • 左側のテキストボックスに、表からデータをフェッチするSQL文を入力します。「Execute」をクリックして問合せを実行します。
  • 個々のセルのデータを個別に表示するには、表のセルをクリックします。
  • 「Update Row」や「Delete Row」などのDML操作を実行するには、特定の行を右クリックします。表示されたコンテキストメニューからオプションを選択します。
    • Delete Row: 確認ウィンドウが表示され、「Ok」をクリックして行を削除します。
    • Update Row: リストされた行の下に個別のHTMLパネルが開き、フォームベースのエントリおよびJSONキー・ペア・オブジェクトとして列名および対応する値が含まれます。2つの方法のいずれかを選択し、新しい値を指定できます。

      ノート:

      どの行でも、PRIMARY KEY列およびGENERATED ALWAYS AS IDENTITY列は更新できません。

表の問合せ

  • スキーマ・エクスプローラを探し、「Refresh」アイコンをクリックしてスキーマをリロードします。
  • 表を右クリックし、「Browse Table」を選択します。
  • 左側のテキストボックスに、SELECT文を入力して表からデータをフェッチします。
  • 「Execute」をクリックして問合せを実行します。対応するデータが表から取得されます。
  • 任意の行を右クリックし、「Download JSON」をクリックします。ダイアログ・ボックスで、ファイルを保存する場所に移動して、「Save」をクリックします。ファイルがダウンロードされたら、画面の右下に通知が表示されます。リンクをクリックして、ダウンロードしたファイルを開きます。ファイルがブラウザに表示されます。
    • バイナリ・データ型の場合は、単に出力で「Download Binary Object」をクリックします。
  • 「Download Query Result」をクリックして、問合せ結果のすべてのデータをダウンロードします。ダイアログ・ボックスで、ファイルを保存する場所に移動して、「Save」をクリックします。複数の行の場合、画面の右下に進行状況バーが表示され、ダウンロードされた行数がリアルタイムで表示されます。ファイルがダウンロードされたら、画面の右下に通知が表示されます。リンクをクリックして、ダウンロードしたファイルを開きます。ファイルがブラウザに表示されます。
  • 「Show Query Plan」をクリックして、問合せの実行プランを表示します。
  • 「Previous Commands」ドロップダウンをクリックして、最近実行されて出力を提供したSQL文の上位20件を表示します。

    ノート:

    ドロップダウンには、作業中の表に関連するSQL文のみが表示されます。

スキーマ・エクスプローラ

  • 「Schema Explorer」ウィンドウで、特定の列の完全なデータ型を確認できます。特定の列を指定すると、データ型の後に列名が表示されます。