【第3回】Oracle APEX入門|CRUD機能付きWebアプリの作り方
はじめに
こんにちは、株式会社メンバーズの中村です。
Oracle APEXについて、第3回目の記事となります。
今回はDB内データ管理向けの便利機能も簡単にご紹介した後、
実際にデータを取り込みながら、簡単にCRUD機能をもつアプリを作成していこうと思います。
※前回作成した、APEXアプリケーションも使いますが、なくても問題ありません。
SQLワークショップ
CRUD機能をもつアプリ作成前に一つ便利機能をご紹介します。
APEXでは、DB内のデータを総合的に管理するのに便利な「SQLワークショップ」というのがあります。
APEXで開発を進めていくのに非常に便利な機能ですが、多機能なので抜粋程度で紹介させていただきます。
CRUD機能実装後に覗いてみると、より発見があると思いますので、一旦読み飛ばして「データ取込とCRUD機能アプリ作成」に進んでもかまいません。
01 SQLワークショップを開く
・APEX開発画面「SQLワークショップ」


02 SQLワークショップの各機能ページ
Oracleには別の「SQL Developer」というツールがありますが、それに近いことやそれ以上の便利機能がSQLワークショップには備わっています。
・「オブジェクト・ブラウザ」
表や、PL/SQLのパッケージの参照だけではなく、作成やデータの一括ロードやダウンロードなどもできます。

・「SQLコマンド」
SQLコマンドを実際に打って、確認することができます。

・「SQLスクリプト」
SQLスクリプトを作って保存しておくことができます。

・「ユーティリティ」
「データ・ジェネレータ」という機能でランダムなデータを大量に作成したり、
「クイックSQL」という独自の構文で簡易的にDDL文+アルファのSQLを作成したり、
様々な機能が集約されています。

・「RESTfulサービス」
非推奨になる機能なので、省略しますが、代わりに「SQL Developer Web」が推奨されるそうです。(個人的に全く異なる機能だとは思っていたのですが)
こちらはもともとある機能で、はじめに記述した「SQL Developer」というツールのWeb版になります。

データ取込とCRUD機能アプリ作成
それでは実際のデータを取り込みながら、CRUD機能を持つアプリを作成していこうと思います。
01 データの準備
第2回目の記事で作成したアプリの「対話モード・レポート」のページから元データをダウンロードします。
・対話モード・レポートのページを開き、「アクション」から「ダウンロード」選択

・「Excel」を選択して「ダウンロード」ボタン選択

・ダウンロードしたExcelを開いて確認、データ追加
A列、B列だと寂しいので、作成日(CREATION_DATE)列を追加しましょう。
※前回のアプリページがない場合は手で作成したり、Excelがない場合はCSVファイルをテキストで作成しても問題ありません。CSVファイルで作成した場合は以降、ExcelをすべてCSVに読み替えれば問題ありません。

02 CRUD機能ページ作成(新アプリ)
・APEX開発画面「アプリケーション・ビルダー」→「作成」

・アプリ名を入力後、「ファイルからのアプリケーションの作成」を選択

・先ほど準備したExcelファイルをドラッグ&ドロップ

・新規表のまま、表名を入力して、「構成」ボタンを押下

・内容を確認して、「変更の保存」ボタン押下
※日付も自動で認識されているはずです。

・「データのロード」画面に戻るので、「データのロード」ボタン押下

・「データのロード」下にエラーがでていないことを確認して、「アプリケーションの作成」ボタン押下
※ここの時点でテーブルはすでにできているので、テーブル作成のみで止めたい場合、ここで✕ボタンで止めても大丈夫です。
なお主キーとして、ID列が自動で追加される仕様になっています。

・新しいアプリケーションのページに飛ぶので、「アプリケーションの実行」を押下して、前回のアプリ同様にログイン

・検索画面を開く

左側に検索欄があり、先ほど取り込んだデータが表示されているはずです。

・左のメニューから「レポート」画面を開く

・編集ボタン押下後、適当に変更して「変更の適用」ボタン押下

以下のように変更が反映されるはずです。

・「作成」ボタン押下後、適当に値を入力して再度「作成」ボタン押下


以下のように3行目が追加されるはずです。

・編集ボタン押下後、「削除」ボタン押下

以下のように削除されて、また2行になるはずです。

おめでとうございます!気づいたらCRUD機能が完成してましたね。
先に紹介した「SQLワークショップ」の「オブジェクト・ブラウザ」からも上記で作成・編集した表が確認できるはずなのでご興味がある方は是非覗いてみてください。
最後に
いかがでしたでしょうか?最後まで読んでいただきありがとうございます。
GUI操作だけで簡単にCRUD機能を持つアプリが作れたかと思います。
これぞローコードの醍醐味かなと思っています。
次回は、実際のテーブルを参照するページで、いろいろカスタマイズしていく様子が紹介できればなと思っています。
その時までお楽しみに!
この記事を書いた人

関連記事
- バッチ処理の設計・実装で失敗しないための鉄則8選
Hideki Ikemoto
Advent Calendar!
Advent Calendar 2024
What is BEMA!?
Be Engineer, More Agile