SQL Developer Web で Autonomous Database にローカルファイル(xlsx)をロードする
この記事は「Oracle Cloud Infrastructure Advent Calendar 2019 - Adventar」の12月1日の記事として書かれています。
記事の内容は執筆時(2019/12/01)のものであり、現在とは異なる可能性がありますので適宜最新状況をご確認ください。
Autonomous Database へデータをロードする方法はいくつかありますが、一番手っ取り早そうな SQL Developer Web によるロードをご紹介します。
SQL Developer Web は、SQL Developer をご利用されてる方は、SQL Developer のブラウザ版だと思って頂ければ、理解が早いです。
ブラウザ環境さえあれば、SQLの実行が可能になり、Autonomous Database では、プロビジョニング直後から利用可能です。
もちろん Always Free で作成した Autonomous Database でも利用可能です。
前置き
本記事では、Autonomous Database 自体の作成やSQL Developer Web の接続方法は含みません。
SQL Developer Web で Autonomous Database 上の既存表へエクセルファイル(xlsx)をロードするために、必要なファイルと表の準備から紹介しています。
まずはマニュアル
読まなくても直感で使えますが、念のため本記事で紹介する機能のマニュアルを置いておきます。
マニュアルは、ADW/ATP で分かれてますが、"Load Data from Local Files with SQL Developer Web" という章でどちらも内容は同じです。
Using Oracle Autonomous Data Warehouse
docs.oracle.com
Using Oracle Autonomous Transaction Processing
docs.oracle.com
ロードするデータの準備
今回は、日本オラクルの事業所一覧を元に、データを作成しました。
www.oracle.com
下記のタブ区切り文字列をコピー、Excelに貼りつけて保存してください。
私は、日本オラクル事業所一覧.xlsxという名前で保存しました。
事業所名 郵便番号 所在地 電話番号 本 社 107-0061 東京都港区北青山2-5-8 オラクル青山センター 03-6834-6666 北海道オフィス 060-0001 札幌市中央区北一条西4-1-2 武田りそなビル 6F 011-252-6500 東北オフィス 980-0014 宮城県仙台市青葉区本町1-1-1 大樹生命仙台本町ビル 18F 022-212-3303 東海オフィス 453-6111 愛知県名古屋市中村区平池町4-60-12 グローバルゲート名古屋 11F 052-551-7511 北陸オフィス 920-0901 石川県金沢市彦三町1-2-1 アソルティ金沢彦三 1F リージャス金沢駅東センター 関西オフィス 530-0003 大阪府大阪市北区堂島2-4-27 新藤田ビル 9F 06-6442-6777 中国・四国オフィス 730-0051 広島市中区大手町2-8-1 大手町スクエア 8F 082-249-3371 九州オフィス 810-0001 福岡県福岡市中央区天神1-12-7 福岡ダイヤモンドビル 8F 092-736-0150 沖縄オフィス 900-0033 沖縄県那覇市久米2-3-15 COI那覇ビル 5F リージャス COI那覇ビルセンター 098-916-8353 赤坂オフィス 107-0051 東京都港区元赤坂1-3-13 赤坂センタービルディング 03-6834-6666 豊田オフィス 471-0833 愛知県豊田市山之手4-46 三井住友海上豊田ビル5F 0565-74-1600 トレーニングキャンパス大阪 530-0003 大阪府大阪市北区堂島2-4-27 新藤田ビル 06-6442-6172 トレーニングキャンパス赤坂 107-0051 東京都港区元赤坂1-3-13 赤坂センタービルディング12F 0120-155-092
北陸オフィスには、オフィス用の電話番号はないのですね。
例では、日本オラクル事業所一覧.xlsxという名前で保存しました。
ロード対象の表を準備
今回は初めてのデータ投入なので、OCJ_Officeという表を作成します。
CREATE TABLE OCJ_Office( OfficeName varchar2(60), ZipCode varchar2(8), Address varchar2(120), OfficeTEL varchar2(12) );
SQL Developer であれば、新規表もロード時に作成できますが、SQL Developer Web ではロード先の表を事前に作成しておく必要があります。
SQL Developer Web でローカルファイル(xlsx)をロード
準備したデータと表を使って SQL Developer Web で Autonomous Database にロードしていきます。
表を決めて、ファイルの選んで、表とファイルの列を結びつけておしまいです。
- ロードしたい表を右クリックしてデータをアップロードを選択
- インポートウィザードがブラウザ内に開く
- ロードしたいデータが入ったファイルを指定するとプレビュー画面へ
- ⚙を押すとスキップする行など選択も可能
- 表のどの列にファイルのどの列を対応させるか選択
- 1つ1つやるのは、面倒なので、⚙を押して、位置を選択
- 今回、列の並びは同じなのでマッピング完了
- 確認画面で良ければ、終了を教えてジョブ実行
- この画面は実行されたことがわかるだけなので、OK押しましょう。
- フッターに完了した旨通知されます。
- SELECT するとデータが入っているのが確認できます。日本語もできてますね。
SELECT * FROM OCJ_Office;