5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LiveLabs:ORDS: Build Powerful, Secure RESTful ORDS APIs for your Oracle Autonomous Databaseの実施メモ(前編)

Last updated at Posted at 2025-08-23

はじめに

この記事で書いてること

ORDSとは

  • ORDS(Oracle REST Data Services)は、Oracle Databaseのデータや機能をREST APIとして簡単に公開できるサービス
  • SQLやPL/SQLをそのままAPI化できるため、フロントエンドや外部システムから安全にデータを呼び出せる
  • APEXとの連携により、認証・セキュリティ機能も標準で利用可能
  • Webアプリやモバイルアプリ開発で、データベースと直結した効率的なAPI基盤を構築できるのが大きな魅力

AutoRESTとは

  • Oracle Autonomous Database(ADB)のAutoRESTは、データベース内のテーブルやビューを簡単にREST API化できる機能
  • 主に以下の特長がある
    • ノーコードで簡単:特別なプログラムやコードを書かず、GUIで操作するだけでAPIを作れる
    • 迅速な開発:REST APIを使ったアプリケーション開発がスピードアップする
    • セキュリティ強化:Oracle Cloudが標準で提供するセキュリティ機能を利用できる

LiveLabsでやってることの概要

  • AutoRESTでテーブルをAPIで公開するステップ(前編:この記事)
  • ビジネスロジックをAPIで公開するステップ(後編:今後共有予定の記事)

後編作成・公開しました。

実施メモ(前編):AutoRESTでテーブルをAPIで公開するステップ

前提

  • ADB環境がセットアップされている
    • Publicからのアクセスが可能
  • Database Actionsにアクセスできる
  • curlコマンドを実行できる環境がある

準備

Tableの作成&データロード

  • CSVデータをダウンロード
  • Database Actionsを用いて、ダウンロードしたCSVファイルをもとにテーブル作成&データロード
    SQL Developer Webを起動
    image.png

データ・ロードを選択
image.png

ダウンロードしたファイルをアップロード
image.png

右下のアップロードをクリック
image.png

image.png

リフレッシュ後、CSV_DATAをオープン

image.png

データを選択の上、データがロードされていることを確認
image.png

AutoRESTの有効化

CSV_DATAを選択の上、REST->有効化を選択
image.png

右下の有効化を選択
image.png

(補足)実際にはこのコードが実行される

BEGIN
    ORDS.ENABLE_OBJECT(
        P_ENABLED      => TRUE,
        P_SCHEMA      => 'ADMIN',
        P_OBJECT      =>  'CSV_DATA',
        P_OBJECT_TYPE      => 'TABLE',
        P_OBJECT_ALIAS      => 'csv_data',
        P_AUTO_REST_AUTH      => FALSE
    );
    COMMIT;
END;

REST有効化されたテーブルは右側にアイコンが表示される
image.png

cURLコマンドを確認
image.png

image.png

image.png

URL部分をコピーの上、REST/APIでアクセス
例:PostmanでURLを実行したときのイメージ
image.png

image.png

BATCH LOAD

BATCH LOADを選択のうえ、Copy to Clipboardをクリック
image.png

以下のcurlコマンドがコピーされるので、エディターに貼付けする

curl --location --request POST \
--header "Content-Type: <CONTENT_TYPE>" \
--data-binary @<FILE_NAME> \
'https://sya6vphk3pzlkhq-dw4ai.adb.ap-tokyo-1.oraclecloudapps.com/ords/admin/csv_data/batchload' 

以下のcurlコマンドを用いたファイルをダウンロード

curl -o 2M.csv https://c4u04.objectstorage.us-ashburn-1.oci.customer-oci.com/p/EcTjWk2IuZPZeNnD_fYMcgUhdNDIDA6rt9gaFj_WZMiL7VvxPBNMY60837hu5hga/n/c4u04/b/livelabsfiles/o/developer-library/2M.csv

ダウンロードしたファイルを用いたBATCH LOADをするようにコマンドを編集

※ 以下コマンドの"--user "admin:Welcome12345#"は、実際のユーザ/パスワードに変更する

curl --location --request POST \
--write-out '%{time_total}'  \
--header "Content-Type:text/csv" \
--data-binary @2M.csv \
--user "admin:Welcome12345#"  \
'https://sya6vphk3pzlkhq-dw4ai.adb.ap-tokyo-1.oraclecloudapps.com/ords/admin/csv_data/batchload' 

コマンドが成功したことを確認

#INFO Number of rows processed: 2,097,148
#INFO Number of rows in error: 0
#INFO Last row processed in final committed batch: 2,097,148
SUCCESS: Processed without errors

参考

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?