D.3 Oracle Data Pumpを使用したJSONデータ型への移行
この移行方法では、データのみモードでOracle Data Pumpを使用して、テキストJSON列が含まれる元の表から、JSON
型列が含まれることを除いて同じ形状の新しい表にデータをロードします。
次のステップを実行します。
-
例4-1に似たコードを使用して、つまり元の表
j_purchaseorder
と同じ形状の、テキストJSON列ではなくJSON
型列が含まれる、新しい表j_purchaseorder_new
を作成します。CREATE TABLE j_purchaseorder_new (id VARCHAR2(32), date_loaded TIMESTAMP(6) WITH TIME ZONE, po_document JSON);
-
コマンドライン・クライアント
expdp
を使用して、元の表j_purchaseorder
からダンプ・ファイルpurchase_ord_txt.dmp
にデータをエクスポートします。(ここでは、table_owner
は表を所有するデータベース・スキーマ、password
はそのパスワードです。)expdp table_owner/password tables=j_purchaseorder directory=mydir dumpfile=purchase_ord_txt.dmp logfile=expdp_po.log
-
データのみモードを使用して、ダンプされたデータを新しい表にインポートするには、コマンドライン・クライアント
impdp
を使用します。この例では、
table_owner
は表を所有するデータベース・スキーマのプレースホルダ、password
はそのパスワードのプレースホルダ、dumpfile_dir
はダンプ・ファイルが格納されているディレクトリのプレースホルダです。impdp table_owner/password tables=j_purchaseorder directory=dumpfile_dir dumpfile=purchase_ord_txt.dmp logfile=impdp_po.log remap_table=j_purchaseorder:j_purchaseorder_new content=data_only
-
元の表を削除するか、名前を3つ目のなんらかの名前に変更してから、新しい表の名前を元の表の名前に変更します。例D-4にこれを示します。
関連項目:
親トピック: テキストJSONデータからJSONデータ型への移行