コレクションへのJSONドキュメントの配列のロード
クラウドのコレクションからデータをロードするには、最初にオブジェクト・ストレージ資格証明をAutonomous Databaseに格納してから、PL/SQLプロシージャDBMS_CLOUD.COPY_COLLECTION
を使用してドキュメントをコレクションにロードします。このトピックでは、ファイル内のJSON配列からデータベースにドキュメントをロードする方法について説明します。
SODA for RESTを使用して、ファイル内のJSON配列からコレクションにドキュメントをロードすることもできます。SODA for RESTを使用した購買オーダー・サンプル・データのロードを参照してください。
この例では、JSONファイルfruit_array.json
を使用します。次の例は、ファイルfruit_array.json
の内容を示しています:
[{"name" : "apple", "count": 20 },
{"name" : "orange", "count": 42 },
{"name" : "pear", "count": 10 }]
Autonomous Databaseにデータをロードする前に、次のようにデータをオブジェクト・ストアにコピーします:
-
オブジェクト・ストアにバケットを作成します。たとえば、Oracle Cloud Infrastructure Object StorageリンクからOracle Cloud Infrastructure Object Storeバケットを作成し、選択したコンパートメントで「バケットの作成」をクリックするか、次のOCI CLIコマンドなどのコマンドライン・ツールを使用します:
oci os bucket create -name json_bucket -c <compartment id>
-
JSONファイルをオブジェクト・ストアにコピーします。たとえば、次のOCI CLIコマンドでは、JSONファイル
fruit_array.json
がオブジェクト・ストアにコピーされます:oci os object put --bucket-name json_bucket --file "fruit_array.json"
JSONファイルをオブジェクト・ストアからデータベース上のfruit2
という名前のSODAコレクションにロードします:
フォーマット・オプションunpackarrays
を使用したDBMS_CLOUD.COPY_COLLECTION
によるfruit_array.json
のロードは、ソース内の配列値を認識し、デフォルトの場合のようにデータを1つのドキュメントとしてロードするかわりに、配列内の各値を1つのドキュメントとして、データをコレクションfruit2
にロードします。