SODA for In-Database JavaScriptの使用
SODA for In-Database JavaScriptにアクセスする方法と、これを使用してコレクションに対する作成、読取り(取得)、更新および削除(CRUD)操作を実行する方法について説明します。
この項では、SODA for MLE JavaScriptについて説明します。この項のコード・スニペットは、読みやすくするために簡略化されている場合があります。JavaScriptファンクションの全体がリストされるように注意されていますが、単独では実行できません。ファンクション定義をJavaScriptモジュールに埋め込み、MLE JavaScript SQLドライバをインポートすると、これらのコード例がOracle AI Database 26aiの有効なJavaScriptコードに変換されます。
トピック
- SODA for In-Database JavaScriptの開始
SODA for In-Database JavaScriptにアクセスする方法、およびこれを使用してデータベース・コレクションを作成し、ドキュメントをコレクションに挿入し、コレクションからドキュメントを取得する方法について説明します。 - SODA for In-Database JavaScriptによるドキュメント・コレクションの作成
SODA for In-Database JavaScriptを使用して新しいドキュメント・コレクションを作成する方法について説明します。 - SODA for In-Database JavaScriptでの既存のドキュメント・コレクションのオープン
メソッドSodaDatabase.openCollection()を使用して、既存のドキュメント・コレクションをオープンしたり、指定された名前が既存のコレクションを示しているかどうかをテストできます。 - SODA for In-Database JavaScriptによる特定のコレクションの有無の確認
SodaDatabase.openCollection()を使用すると、特定のコレクションの存在を確認できます。コレクションの引数が既存のコレクションを示さない場合、nullを返し、それ以外の場合、その名前のコレクションをオープンします。 - SODA for In-Database JavaScriptによる既存のコレクションの検出
SodaDatabase.getCollectionNames()を使用すると、特定のSodaDatabaseオブジェクトのすべての既存コレクションの名前をフェッチできます。 - SODA for In-Database JavaScriptによるドキュメント・コレクションの削除
SodaCollection.drop()を使用して、既存のコレクションを削除します。 - SODA for In-Database JavaScriptによるドキュメントの作成
SODA for In-Database JavaScriptによるドキュメントの作成について説明します。 - SODA for In-Database JavaScriptによるコレクションへのドキュメントの挿入
SodaCollection.insertOne()または関連コール(sodaCollection.insertOneAndGet()など)を使用すると、ドキュメントをコレクションに追加できます。そのコレクションがクライアント割当てキーで構成されており入力ドキュメントでそのキーが指定されている場合(これは、ほとんどのユーザーにはお薦めしません)を除き、これらのメソッドでは、ドキュメント・キーが自動的に作成されます。 - SODA for In-Database JavaScriptによるコレクションへのドキュメントの保存
SodaCollection.save()およびsaveAndGet()を使用して、ドキュメントをコレクションに保存します。 - SODA for In-Database JavaScriptの読取りおよび書込み操作
読取りおよび書込み操作(挿入および保存以外)を指定する主な方法は、SodaOperationクラスが提供するメソッドを使用することです。SodaOperationメソッドをつなげて、コレクションに対する読取りおよび書込み操作を指定できます。 - SODA for In-Database JavaScriptによるコレクション内のドキュメントの検索
コレクション内のドキュメントを検索するには、SodaCollection.find()を呼び出します。SodaOperationオブジェクトが作成されて戻されます。これは、非ターミナル・メソッドおよびターミナル・メソッドを含むメソッド・チェーンを介して使用されます。 - SODA for In-Database JavaScriptによるコレクション内のドキュメントの置換
コレクション内のあるドキュメントのコンテンツを別のドキュメントのコンテンツで置き換えるには、まずそのキーを使用して、変更するドキュメントを検索します。SodaOperation.key()は非ターミナル操作であるため、コンテンツを置換する最も簡単な方法は、SodaOperation.key()をSodaOperation.replaceOne()またはSodaOperation.replaceOneAndGet()につなげることです。 - SODA for In-Database JavaScriptによるコレクションからのドキュメントの削除
コレクションからのドキュメントの削除は置換と似ています。最初のステップは、検索操作(通常はドキュメントのキーに基づいて、またはSodaOperation.filter()の検索式を使用して)を実行することです。SodaOperation.remove()のコールはターミナル操作です。つまり、チェーンの最後の操作です。 - SODA for In-Database JavaScriptによるコレクション内のドキュメントの索引付け
索引は、NoSQLスタイルのSODA APIとリレーショナル・アプローチのどちらを使用するかに関係なく、データ・アクセスを高速化できます。SODAコレクション内のドキュメントの索引付けには、SodaCollection.createIndex()を使用します。そのIndexSpecパラメータはテキストのJSON索引指定です。 - SODA for In-Database JavaScriptを使用したコレクションのデータ・ガイドの取得
データ・ガイドは、一連のJSON文書に含まれる構造および型情報の概要を示します。これらの文書内で使用されているフィールドに関するメタデータを記録します。JSONドキュメントに対する優れたインサイトを提供し、データ・セットの概要把握に役立ちます。 - SODA for In-Database JavaScriptによるトランザクションの処理
クライアント側のJavaScript SQLドライバとは異なり、MLE JavaScript SQLドライバはautoCommit機能を提供していません。モジュール・コールの場合はPL/SQLレイヤーで、またはconnection.commit()かconnection.rollback()をコールすることでJavaScriptコードで直接的に、トランザクションをコミットまたはロールバックする必要があります。 - SODA APIに関連するコール仕様の作成
この章の前半の「SODA for In-Database JavaScriptの開始」の項で、インライン・コール仕様を使用してMLE SODA APIを呼び出す方法の例を示します。次の短い例は、MLEモジュールでSODAを使用する方法を示しています。