2026年5月21日木曜日

SQLclのskillsコマンドを使用してみる

SQLcl 26.1.2よりskillsコマンドが追加されています。各種のAIツールまたはAIエージェント向けに、Oracle Corporationが提供しているAgent Skillsをインストールするときに使用します。

確認作業に、macOS上のSQLclを使用しています。SQLclのバージョンは以下です。

% sql -v

SQLcl: リリース26.1.2.0 Production ビルド: 26.1.2.132.1334

%


SQLcl 26.1.2のHELP SKILLSを実行すると、以下のように表示されます。
Manages SQLcl DBTools skills.

サブコマンド:
  LIST
    Lists available DBTools skills.

    使用方法:
      list|ls {OPTIONS}

    オプション:
      -debug|-de
        Prints debug output.

      -verbose|-v
        Prints verbose progress output.


  SYNC
    Synchronizes the Oracle DBTools skills repository.

    使用方法:
      sync|sy {OPTIONS}

    オプション:
      -skill-name|-sn <skill-name>
        Comma-separated list of skill names to install.

      -version|-ve <version>
        Blessed skills version to install. Defaults to latest.

      -force|-fo
        Overwrites existing skill directories.

      -debug|-de
        Prints debug output.

      -verbose|-v
        Prints verbose progress output.


Examples:
  The skills command is the entry point for DBTools skill management.

  - List available skills:
      SQL> skills list

  - Synchronize the Oracle skills repository:
      SQL> skills sync

  - Synchronize and install selected skills:
      SQL> skills sync --skill-name apexlang,sqlcl

  - Synchronize a blessed skills version:
      SQL> skills sync --version v1

  - Force overwrite existing skill directories:
      SQL> skills sync --force
オラクルが提供しているAgent Skillsの確認にはlistサブコマンド、インストールにはsyncサブコマンドを使用します。

最初にAgent Skillsをリストしてみます。skills listを実行します。

skills list -v -de

SQL> skills list -v -de

DEBUG: Handling DBTools skills command: skills list -v -de


INFO: Listing DBTools skills from /Users/ynakakoshi/.dbtools/skills/repositories/oracle-skills.

DEBUG: Checked DBTools skills updates on main. Local commit: 11e528de5ea0686b53adf1d853c909a4bf9ed4d9. Remote commit: 11e528de5ea0686b53adf1d853c909a4bf9ed4d9.

+========+=========+=============================================================================================+

+ Skill  + Status  + Agents                                                                                      +

+========+=========+=============================================================================================+

| apex   | MISSING | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+---------+---------------------------------------------------------------------------------------------+

| db     | MISSING | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+---------+---------------------------------------------------------------------------------------------+

| fusion | MISSING | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+---------+---------------------------------------------------------------------------------------------+

| graal  | MISSING | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+---------+---------------------------------------------------------------------------------------------+

| oci    | MISSING | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+---------+---------------------------------------------------------------------------------------------+


SQL> 


現時点ではskills syncを一度も実行していない(正確には、skills syncの実行でインストールされたskillsを全て削除した)ため、StatusはMISSINGになっています。

利用可能なスキルとして、apexdbfusiongraalociがリストされています。

これらのスキルの実態は、GitHubのリポジトリhttps://github.com/oracle/skillsに存在します。skills syncを実行すると、このリポジトリにあるファイルが手元にダウンロードされます。

apexとdbのスキルをインストールしてみます。-verboseおよび-debugオプションをつけて実行します。

skills sync -skill-name apex,db -de -v

SQL> skills sync -skill-name apex,db -de -v

DEBUG: Handling DBTools skills command: skills sync -skill-name apex,db -de -v


INFO: DBTools skills sync log: /Users/username/.dbtools/skills/logs/skills-sync-20260521T063459.505Z.log

INFO: Preparing DBTools skills registry: /Users/username/.dbtools/skills/skills.json

INFO: Synchronizing repository oracle-skills from https://github.com/oracle/skills into /Users/username/.dbtools/skills/repositories/oracle-skills

INFO: Cloning or fetching repository...

SUCCESS: Synchronized DBTools skills repository to /Users/username/.dbtools/skills/repositories/oracle-skills version latest (refs/heads/main -> 11e528de5ea0686b53adf1d853c909a4bf9ed4d9).

INFO: Installing synced skills into detected agent global locations...

INFO: Requested skills: apex, db

INFO: Detected agent locations: claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp

SUCCESS: Installed 20 entries into agent skill locations.

SUCCESS: DBTools skills sync log: /Users/username/.dbtools/skills/logs/skills-sync-20260521T063459.505Z.log

SQL> 


SQLclのExamplesに、skills syncの例として以下が記載されています。

skills sync --skill-name apexlang,sqlcl

SQL> skills sync --skill-name apexlang,sqlcl

SUCCESS: Synchronized DBTools skills repository to /Users/ynakakoshi/.dbtools/skills/repositories/oracle-skills version latest (refs/heads/main -> 11e528de5ea0686b53adf1d853c909a4bf9ed4d9).

WARN: Requested skills not found: apexlang, sqlcl

SUCCESS: Installed 0 entries into agent skill locations.

SUCCESS: DBTools skills sync log: /Users/ynakakoshi/.dbtools/skills/logs/skills-sync-20260521T064109.564Z.log

SQL> 


HELPのSYNCサブコマンドのヘルプにはスキルを指定するオプションは'-skill-name'と記載されていますが、'--skill-name'(ハイフンがふたつ)でもオプションとしては受け付けるようです。一般的には、長いオプション名は'--'で始まり、短縮名は'-'で始まります。

メッセージに'Requested skills not found: apexlang, sqlcl'と表示されています。この例で指定されているapexlangのスキルは、正しくはapex/apexlangに存在します。sqlclはdb/sqlclです。認識しているスキルはapex、db、fusion、graal、ociに限られているため、現時点では、この例にある指定は不可です。

すでにskills sync -skill-name apex,dbを実行しています。インストールされたスキルを確認します。

skills list

SQL> skills list

+========+===========+=============================================================================================+

+ Skill  + Status    + Agents                                                                                      +

+========+===========+=============================================================================================+

| apex   | INSTALLED | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+-----------+---------------------------------------------------------------------------------------------+

| db     | INSTALLED | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+-----------+---------------------------------------------------------------------------------------------+

| fusion | MISSING   | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+-----------+---------------------------------------------------------------------------------------------+

| graal  | MISSING   | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+-----------+---------------------------------------------------------------------------------------------+

| oci    | MISSING   | claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp |

+--------+-----------+---------------------------------------------------------------------------------------------+


Agent Skillsのapexとdbについては、StatusがINSTALLEDに変わっています。

skills syncの実行時に--debugオプションを付加しているため、作業ログが出力されています。その作業ログの内容を確認してみます。

ログからRegistry File(全体の設定ファイル)として、~/.dbtools/skills/skills.jsonが使用されていることがわかります。skills.jsonの先頭で、以下のようにリポジトリが定義されています。
    "repositories": [
        {
            "id": "oracle-skills",
            "url": "https://github.com/oracle/skills",
            "branch": "main",
            "localPath": "~/.dbtools/skills/repositories/oracle-skills",
            "lastSync": "2026-05-21T06:48:09.678712Z",
            "commit": "11e528de5ea0686b53adf1d853c909a4bf9ed4d9",
            "versionRefs": {
                "latest": "refs/tags/v1",
                "v1": "refs/tags/v1"
            },
            "requestedVersion": "latest",
            "resolvedRef": "refs/heads/main",
            "resolvedCommit": "11e528de5ea0686b53adf1d853c909a4bf9ed4d9"
        }
    ],
urlとして指定されているhttps://github.com/oracle/skillsを、localPath~/.dbtools/skills/repositories/oracle-skillsにクローンしています。skill-nameの指定に関わらず、リポジトリ全体がダウンロードされています。

git show-refを実行すると、mainブランチの最新がクローンされていることがわかります。

% cd ~/.dbtools/skills/repositories/oracle-skills 

oracle-skills % git show-ref

11e528de5ea0686b53adf1d853c909a4bf9ed4d9 refs/heads/main

4e91e91590124502af8255d05594319445e9f39a refs/remotes/origin/add-mle-javascript-skill-to-index

4c30742e3d587c0476e02955c3a8069deaa3b471 refs/remotes/origin/add-sql-best-practices-skill

1862eed20c7297516be563150fa7bae8b11b0049 refs/remotes/origin/apex-lite-overview

4efe6c1a8cf3eaef238df1cdee2e4eea90b4a28e refs/remotes/origin/copilot/review-oracle-database-skills

ec862d19e600f51d1aa602b5a1ddbc925be84be4 refs/remotes/origin/deep-review-oracle-skills-pr

1babcdd643cea35cebd866cbd8c13a771590d5f7 refs/remotes/origin/integrate/pending-prs-after-restructure

11e528de5ea0686b53adf1d853c909a4bf9ed4d9 refs/remotes/origin/main

f7675b072a690f25e8cc4446bf14470130b8e663 refs/remotes/origin/mle-javascript-skill

11e7bd3127cbf023b39bd52da2b805aeaab6eb34 refs/remotes/origin/restructure/oracle-domains

5e0cb6a28bd4939b1161e35259d50e27d2b31044 refs/remotes/origin/root-skill-domains

1d0cd74648639fffb94f3130c4373a8a1f6060bd refs/remotes/origin/sqlcl-enhancements

2be594451cf526c5ea6a23da2ddb18fbe7abb286 refs/remotes/origin/tw/add-db-skill-metadata

oracle-skills % ls

CONTRIBUTING.md README.md SKILL_AUTHORING_GUIDE.md db graal

LICENSE.txt SECURITY.md apex fusion oci

oracle-skills % 


versionRefsとしてlatestやv1の設定がありますが、リポジトリにtagが設定されていないため、version指定は使えないはずです。今後、リポジトリ側にtagが付加されると、バージョン指定(--versionまたは-veオプション)が使えるようになる可能性はあります。


ログから確認する範囲では、skills syncは以下の処理を実施しています。
  1. リポジトリ.dbtools/skills/repositories/oracle-skillsを最新に更新する。
  2. SQLclを実行しているホストに実装されているAIエージェントを検出する。
  3. 検出したAIエージェントが認識できるように、リポジトリにクローンしたスキルをコピーする。コピー対象は--skill-nameで指定したスキルに限定される。
ログを見る範囲では、私の環境ではclaude-code、cline、codex、cursor、dexto、gemini-cli、github-copilot、goose、opencode、warpが見つかっています。

[2026-05-21T07:17:27.519946Z] detectedAgents: claude-code, cline, codex, cursor, dexto, gemini-cli, github-copilot, goose, opencode, warp

[2026-05-21T07:17:27.520090Z] missingAgents: adal, aider-desk, amp, antigravity, augment, bob, codearts-agent, codebuddy, codemaker, codestudio, command-code, continue, cortex, crush, deepagents, devin, droid, firebender, forgecode, iflow-cli, junie, kilo, kimi-cli, kiro-cli, kode, mcpjam, mistral-vibe, mux, neovate, openclaw, openhands, pi, pochi, qoder, qwen-code, replit, roo, rovodev, tabnine-cli, trae, trae-cn, universal, windsurf, zencoder


Claude Code、Codex、Gemini CLI、OpenCodeは使用していますが、その他は使用していません。cline、cursor、github-copilotは使用したことがあるため検出されるのも分かりますが、dexto、goose、warpについては使用した覚えがありません。

検出されたエージェントについては、スキルのコピーが実施されます。以下はClaude Code向けの作業ログです。

[2026-05-21T07:17:27.520571Z] result: INSTALLED agent=claude-code displayName=Claude Code projectPath=.claude/skills/ globalPath=~/.claude/skills/ entry=apex target=/Users/username/.claude/skills/apex

[2026-05-21T07:17:27.520589Z] result: INSTALLED agent=claude-code displayName=Claude Code projectPath=.claude/skills/ globalPath=~/.claude/skills/ entry=db target=/Users/username/.claude/skills/db


projectPathおよびglobalPathが表示されていますが、Agent Skillsは常にtargetにコピーされているようです。つまりグローバル設定にコピーされ、プロジェクトパスにはコピーされていません。将来はprojectPathにコピーできるようになるかもしれませんが、現時点ではskills syncの宛先にプロジェクトを指定するオプションはありません。

skill-nameで指定したスキルのコピーは、検出したすべてのエージェントを対象に実行されます。すべてグローバル設定です。

Claude Codeでは~/.claude/skills以下、Clineでは~/.agents/skills、Codexは~/.codex/skills、Cursorは~/.cursor/skills、Gemini CLIは~/.gemini/skills、GitHub Copilotでは~/.copilot/skills、OpenCodeでは~/.config/opencode/skillsがコピー先となっていました。

一旦インストールされたAgent Skills、特にグローバル設定としてインストールされたAgent Skillsを削除するときは、上記のディレクトリ以下にコピーされたスキル名のディレクトリを削除します。

今回の記事は以上になります。

2026年5月15日金曜日

CodexとClaude CodeでAPEX 26.1のAPEXlangによるアプリケーション生成を試してみる

Oracle APEX 26.1がリリースされたので、OpenAI CodexとClaude CodeによるAPEXlang形式でのアプリケーション生成を試してみます。

Oracle APEX 26.1の実行環境の作成には、ベルギーのUnited Codes社が公開しているUC Local APEX Devを使用します。ブランチ26-2の最新で、Oracle APEX 26.2に対応した環境が作成できます。

インスタンス作成後以下のコマンドを実行し、APEXワークスペースとしてAPEXDEVを作成しています。

local-26ai.sh create-user apexdev

作成したワークスペースAPEXDEVにサインインし、サンプル・データセットEMP/DEPTをインストールします。

APEX 26.1よりUniversal Themeに、新たにIrisテーマ・スタイルが追加されています。開発ツールの見た目が変更され、少し操作に戸惑います。


サンプル・データセットのEMP/DEPTをインストールします。このデータセットに含まれる表EMPの一覧と操作を行なうAPEXアプリケーションを、CodexとClaude Codeで作成してみます。


APEXおよびデータベース側の準備は以上で完了です。


OpenAI Codex



ホストに作業用のディレクトリを作成します。

mkdir emp-crud
cd emp-crud

Documents % mkdir emp-crud

Documents % cd emp-crud

emp-crud % 


Gitで管理する予定はありませんが、Codexが認識するので初期化だけしておきます。

git init

emp-crud % git init

Initialized empty Git repository in /Users/**********/Documents/emp-crud/.git/

emp-crud % 


生成するAPEXアプリケーションの出力先となるディレクトリをapplicationsとして作成します。

mkdir applications

emp-crud % mkdir applications

emp-crud % 


APEXアプリケーションの生成手順(ツール含む)は、Oracle CorporationよりAgent Skillsとして提供されています。このAgent Skillsは、https://github.com/oracle/skillsより入手できます。

このAgent SkillsをCodexおよびClaude Code向けにインストールするために、Microsoft APM(Agent Package Manager)を使用します。作業ディレクトリ以下にファイルapm.ymlを作成し、以下の内容を記述します。
name: emp-crud
version: 0.1.0
description: Oracle APEX 26.1のAPEXlangを使ってアプリケーションを作成する。
author: Yuji
dependencies:
  apm:
    # Oracle Database Skills
    - git: https://github.com/oracle/skills
      path: db
      ref: main
    # Oracle APEX Skills
    - git: https://github.com/oracle/skills
      path: apex
      ref: main 
scripts: {}
apm.ymlを作成した後、Codex向けにインストールします。

apm install --target codex

emp-crud % apm install --target codex

[>] Installing dependencies from apm.yml...

[>] Resolving skills-db...

[>] Resolving skills-apex...

[i] Targets: codex  (source: --target flag)

  [+] github.com/oracle/skills/apex#main #main @11e528de

  |-- Skill integrated -> .agents/skills/

  [+] github.com/oracle/skills/db#main #main @11e528de

  |-- Skill integrated -> .agents/skills/

[i] Added apm_modules/ to .gitignore


[*] Installed 2 APM dependencies in 3.2s.

emp-crud % 


APEXアプリケーションを作成するにあたって、データベースから情報を取得できるようにSQLclのMCPサーバーを構成します。また、コマンドラインからSQLclを起動したときに、データベースへのネットワーク接続を許可します。

作業ディレクトリの下の.codex/config.tomlに以下を記述します。
[mcp_servers.oracle-apexdev]
command = "/opt/homebrew/Caskroom/sqlcl/26.1.2.132.1334/sqlcl/bin/sql"
args = [ "-R", "4", "-mcp" ]
id = ""
[sandbox_workspace_write]
network_access = true
以上で、Codexを使ってAPEXアプリケーションを生成する準備ができました。

codexを起動します。

codex --sandbox workspace-write

作業ディレクトリを信頼します。

> You are in /Users/__________/Documents/emp-crud


  Do you trust the contents of this directory? Working with untrusted contents comes with higher risk of

  prompt injection. Trusting the directory allows project-local config, hooks, and exec policies to

  load.


› 1. Yes, continue

  2. No, quit


  Press enter to continue


アプリケーションを生成するにあたって、以下のプロンプトを渡します。
1. MCPサーバーoracle-apexdevで、データベースlocal-26ai-apexdevに接続してください。
2. local-26ai-apexdevはユーザーapexdevで接続されています。これはAPEXワークスペースAPEXDEVのパーシング・スキーマです。
3. スキーマAPEXDEVには表EMPが存在します。
4. APEXlangのスキルを参照して、表EMPの一覧を表示する対話モード・レポートのページと、従業員の作成、更新、削除ができるフォームを持つAPEXアプリケーションEMP_CRUDを作成してください。
5. アプリケーションはディレクトリapplications以下にEMP_CRUDとして作成してください。
6. アプリケーションのインポートはMCPサーバーではなく、applications/EMP_CRUDに移動した後に、"sql -name local-26ai-apexdev"でSQLclを起動し、"apex import"を実行することで、APEXアプリケーションのインポートを行なってください。
生成したアプリケーションのインポートは、MCPサーバー(ツールsqlcl_run)からは実行できないようなので、SQLclをコマンドラインから実行するように指示しています。

ツール実行は随時許可します。

╭───────────────────────────────────────────────────╮

│ >_ OpenAI Codex (v0.130.0)                       

                                                 

│ model:     gpt-5.4-mini medium   /model to change │

│ directory: ~/Documents/emp-crud                  

╰───────────────────────────────────────────────────╯


  Tip: GPT-5.5 is now available in Codex. It's our strongest agentic coding model yet, built to reason

  through large codebases, check assumptions with tools, and keep going until the work is done.


  Learn more: https://openai.com/index/introducing-gpt-5-5/



1. MCPサーバーoracle-apexdevで、データベースlocal-26ai-apexdevに接続してください

 

  2. local-26ai-apexdevはユーザーapexdevで接続されています。これはAPEXワークスペースAPEXDEVのパーシン

  グ・スキーマです。

  3. スキーマAPEXDEVには表EMPが存在します。

  4. APEXlangのスキルを参照して、表EMPの一覧を表示する対話モード・レポートのページ

  と、従業員の作成、更新、削除ができるフォームを持つAPEXアプリケーションEMP_CRUDを作成してください。

  5. アプリケーションはディレクトリapplications以下にEMP_CRUDとして作成してくださ>い。

  6. アプリケーションのインポートはMCPサーバーではなく、applications/EMP_CRUDに移>

  動した後に、”sql -name local-26ai-apexdev”でSQLclを起動し、apex importを実行する

  ことで、APEXアプリケーションのインポートを行なってください。



apexapexlang の手順を先に確認して、接続情報とアプリ生成・インポートの流れを固めます。次に oracle-

  apexdev MCP で接続して、必要なスキーマ情報を取ります。


Explored

  Read SKILL.md (apex skill), SKILL.md (apexlang skill)


────────────────────────────────────────────────────────────────────────────────────────────────────────


APEXLang のルールでは、まずローカルの生成コンテキストを確認してから app を解決します。workspace probe

  と、生成フローの参照元を並行で見ます。


Explored

  Read apex-generation.md, prompt-contracts.md


Ran node /Users/ynakakoshi/Documents/emp-crud/.agents/skills/apex/apexlang/tools/apexctl.mjs workspace

  probe

  └ (no output)


────────────────────────────────────────────────────────────────────────────────────────────────────────


DB 側はユーザー指定が十分なので、local-26ai-apexdev に接続して APEXDEV スキーマの実体を確認します。並

  行できる範囲は後でやりますが、接続とスキーマ取得は順番依存です。


Calling oracle-apexdev.connect({"connection_name":"local-26ai-apexdev","model":"gpt-5.5"})


 

  Field 1/1 (1 required unanswered)

  Allow the oracle-apexdev MCP server to run tool "connect"?

 

  connection_name: local-26ai-apexdev

  model: gpt-5.5

 

    1. Allow                   Run the tool and continue.

  › 2. Allow for this session  Run the tool and remember this choice for this session.

    3. Always allow            Run the tool and remember this choice for future tool calls.

    4. Cancel                  Cancel this tool call

  enter to submit | esc to cancel


色々と処理中のメッセージが表示されます。作成を指示したAPEXアプリケーション自体は単純なものなので、以降はツール実行の確認は求められますが、Codexから何か確認を求められるということはありません。

色々試してみて、APEXワークスペース名やAPEXアプリケーション名を指定していないと、Codexから入力を求められたので、これらの値はあらかじめプロンプトに含めています。

最終的にAPEXアプリケーションが生成され、ワークスペースにインポートされます。

───────────────────────────────────────────────────────────────────────────────────────────────────────────────


最終報告の参照用に、application.apx の該当箇所とページの位置だけ確認します。これでどこが CRUD の入口かを具体

  的に示せます。


Explored

  Read application.apx, p00001-employees.apx, p00002-employee-form.apx


───────────────────────────────────────────────────────────────────────────────────────────────────────────────


applications/EMP_CRUDEMP_CRUD アプリを用意し、local-26ai-apexdevAPEXDEV ワークスペースへ SQLcl でイン

  ポートしました。apex validateapex import は同一 SQLcl セッションで実行し、import は成功、アプリ ID は 112

  でした。


  - 対話モード・レポートは applications/EMP_CRUD/pages/p00001-employees.apx:62 にあり、EMPEMPNO 順で表示

    し、行クリックでフォームへ遷移します。

  - CRUD フォームは applications/EMP_CRUD/pages/p00002-employee-form.apx:18 にあり、EMP の作成・更新・削除を行

    えます。

  - アプリ定義の入口は applications/EMP_CRUD/application.apx:40 です。


  補足として、ライブ SQLcl では authentication.scheme が正でした。リポジトリ側の packaged helper は古い

  compiler metadata を掴んでいて、ローカルの補助検証だけは authenticationScheme を期待する状態が残っています。

  ライブ import は成功しているので、実運用の source は正しいです。


─ Worked for 10m 18s ──────────────────────────────────────────────────────────────────────────────────────────



もう一度インポートを実行してください。



同じ EMP_CRUD を再インポートします。前回と同じく、まず apex validate を同一 SQLcl セッションで通してから apex

  import を実行します。


• Waited for background terminal · sql -name local-26ai-apexdev


接続できました。同一セッションのまま validate を実行します。


Interacted with background terminal · sql -name local-26ai-apexdev

  apex validate -input /Users/ynakakoshi/Documents/emp-crud/applications/EMP_CRUD


• Waited for background terminal · sql -name local-26ai-apexdev


validate は成功です。同じセッションで import を続けます。


Interacted with background terminal · sql -name local-26ai-apexdev

  apex import -input /Users/ynakakoshi/Documents/emp-crud/applications/EMP_CRUD


• Waited for background terminal · sql -name local-26ai-apexdev


再インポートも成功しました。セッションを閉じます。


Interacted with background terminal · sql -name local-26ai-apexdev

  exit


Ran sql -name local-26ai-apexdev

 

    SQLcl: Release 26.1 Production on Fri May 15 17:17:57 2026

    … +15 lines (ctrl + t to view transcript)

    Disconnected from Oracle AI Database 26ai Free Release 23.26.1.0.0 - Develop, Learn, and Run for Free

    Version 23.26.1.0.0


───────────────────────────────────────────────────────────────────────────────────────────────────────────────


再インポートしました。local-26ai-apexdev への sql -name local-26ai-apexdev セッション内で apex validate を再

  実行し、そのまま apex import まで通して、Import successful. を確認しています。


───────────────────────────────────────────────────────────────────────────────────────────────────────────────


 

Implement {feature}

 

  gpt-5.4-mini medium · ~/Documents/emp-crud


APEXの環境にサインインし、アプリケーション・ビルダーを開きます。

アプリケーションEMP CRUDが作成されていることが確認できます。


アプリケーションを開いてみます。なぜかテーマのリフレッシュを求められています。


テーマをリフレッシュしたのち、アプリケーションを実行します。

サインインすると対話モード・レポートが表示されます。編集アイコンがアイコンでなくfa-editとなっています。


fa-editをクリックして編集フォームを開くと「Form DML or Initialization process does not have a form region assigned.」というエラーが表示されました。


フォームの初期化プロセスにフォーム・リージョンが割り当てられていないエラーなので、識別フォーム・リージョンEmployeesを割り当てました。


修正後は、フォームが開くようになりました。


APEXアプリケーションに与えたプロンプトはものすごく単純なものです。APEXlangのスキルに記載されているので、生成されたアプリケーションの検証は実施されていますが、あくまでデータとしての整合性が取れているかの検証で、アプリケーションの不具合を見つけているわけではなさそうです。

とはいえ、Codexで動作するAPEXアプリケーションを生成することができました。実用的なアプリケーションが生成できるかどうかは、プロンプト次第でしょう。


Claude Code



続いて、Claude Codeでも同様の作業を行ってみます。

Claude Codeのapm installのターゲットはclaudeです。

apm install --target claude

emp-crud-code % apm install --target claude

[>] Installing dependencies from apm.yml...

[>] Resolving skills-apex...

[>] Resolving skills-db...

[i] Targets: claude  (source: --target flag)

  [+] github.com/oracle/skills/apex#main #main @11e528de

  |-- Skill integrated -> .claude/skills/

  [+] github.com/oracle/skills/db#main #main @11e528de

  |-- Skill integrated -> .claude/skills/

[i] Added apm_modules/ to .gitignore


[*] Installed 2 APM dependencies in 3.6s.

emp-crud-code %


作業ディレクトリの下の.mcp.jsonに以下を記述します。
{
  "mcpServers": {
    "oracle-apexdev": {
      "command": "/opt/homebrew/Caskroom/sqlcl/26.1.2.132.1334/sqlcl/bin/sql",
      "args": [
        "-R",
        "4",
        "-mcp"
      ]
    }
  }
}

以上で、Codexを使ってAPEXアプリケーションを生成する準備ができました。

Claude Codeを起動します。

claude

Codexと同じプロンプトを与えます。

emp-crud-code % claude

╭─── Claude Code v2.1.142 ──────────────────────────────────────────────────────────────────────────────╮

                                                    Tips for getting started                        

                Welcome back Yuji!                 Run /init to create a CLAUDE.md file with instr…

                                                    ────────────────────────────────────────────────

                                            What's new                                      

                                                    Added new `claude agents` flags: `--add-dir`, `…

                        ▘▘ ▝▝                       Fast mode now uses Opus 4.7 by default (previou…

  Sonnet 4.6 · Claude Pro · yuji.nkks@gmail.com's   Plugins with a root-level `SKILL.md` and no `sk…

  Organization                                      /release-notes for more                         

            ~/Documents/emp-crud-code                                                               

╰───────────────────────────────────────────────────────────────────────────────────────────────────────╯


1. MCPサーバーoracle-apexdevで、データベースlocal-26ai-apexdevに接続してください。                     

  2. local-26ai-apexdevはユーザーapexdevで接続されています。これはAPEXワークスペースAPEXDEVのパーシング  

  ・スキーマです。                                                                                       

  3. スキーマAPEXDEVには表EMPが存在します。                                                              

  4. APEXlangのスキルを参照して、表EMPの一覧を表示する対話モード・レポートのページと、従業員の作成、更新 

  、削除ができるフォームを持つAPEXアプリケーションEMP_CRUDを作成してください。                           

  5. アプリケーションはディレクトリapplications以下にEMP_CRUDとして作成してください。                    

  6. アプリケーションのインポートはMCPサーバーではなく、applications/EMP_CRUDに移動した後に、"sql -name  

  local-26ai-apexdev"でSQLclを起動し、"apex                                                              

  import"を実行することで、APEXアプリケーションのインポートを行なってください。                          

                                                                                                         


まずAPEXスキルを参照してから、データベースへの接続と作業を進めます。


Skill(apex)

  ⎿  Successfully loaded skill


APEXLangのワークフローとドメインのドキュメントを読みます。

 

  Read 2 files (ctrl+o to expand)


マスターワークフローとテンプレートを読みます。


  Read 2 files (ctrl+o to expand)


コネクションゲートと主要なエージェントファイルを読みます。


  Read 2 files (ctrl+o to expand)


重要なポリシーとテンプレートを並行して読みます。


  Read 3 files (ctrl+o to expand)


次に、MCPでデータベースへの接続とEMPテーブル構造の確認を行います。


データベースに接続してEMPテーブルの構造を確認します。


  Called oracle-apexdev (ctrl+o to expand)


接続成功。EMPテーブルの詳細情報を取得します。


  Called oracle-apexdev (ctrl+o to expand)


EMPテーブル構造を確認。次にスキャフォールドと対話モードレポート・フォームのテンプレートを読みます。


  Searched for 1 pattern, read 26 files, listed 8 directories (ctrl+o to expand)


Bash(find /Users/ynakakoshi/Documents/emp-crud-code/.claude/skills/apex/apexlang/ -name "*.md" | xargs

      grep -l "automaticRowProcessing\|formFetch\|form-initializatio…)

  ⎿  /Users/ynakakoshi/Documents/emp-crud-code/.claude/skills/apex/apexlang/templates/region-compone

     nts/form/form._processes._common.md

     /Users/ynakakoshi/Documents/emp-crud-code/.claude/skills/apex/apexlang/templates/region-compone

     … +3 lines (ctrl+o to expand)


Bash(find /Users/ynakakoshi/Documents/emp-crud-code/.claude/skills/apex/apexlang/ -name "*.md" | xargs

      grep -l "process.*type\|type.*process\|executionMappingIdentif…)

  ⎿  /Users/ynakakoshi/Documents/emp-crud-code/.claude/skills/apex/apexlang/references/domains/page-

     components/buttons/workflow-button-batch.md

     /Users/ynakakoshi/Documents/emp-crud-code/.claude/skills/apex/apexlang/references/domains/page-

     … +14 lines (ctrl+o to expand)

  

  Searched for 1 pattern, read 5 files, listed 1 directory (ctrl+o to expand)


全テンプレートの確認が完了。アプリケーション生成を開始します。


Bash(mkdir -p /Users/ynakakoshi/Documents/emp-crud-code/applications/EMP_CRUD/.apex \

        /Users/ynakakoshi/Documents/emp-crud-code/applications/EMP_CRUD/deployments \…)

  ⎿  Done


Write(applications/EMP_CRUD/.apex/apexlang.json)

  ⎿  Wrote 3 lines to applications/EMP_CRUD/.apex/apexlang.json

      1 {

      2   "mmdVersion" : "26.1.0+3102"

      3 }


Write(applications/EMP_CRUD/deployments/default.json)

  ⎿  Wrote 5 lines to applications/EMP_CRUD/deployments/default.json

      1 {

      2   "workspace": {

      3     "name": "APEXDEV"

      4   }

      5 }



色々処理が行われ、最終的にAPEXアプリケーションが作成されてワークスペースへのインポートまで実行されます。

すべての作業が完了しました。結果をまとめます。


  ---

  完了報告

  

  実施内容


  1. データベース接続: MCPサーバー oracle-apexdevlocal-26ai-apexdev

  に接続し、EMPテーブルの構造を確認(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)

  2. APEXLangアプリケーション生成: applications/EMP_CRUD/ に以下のファイルを生成

    - application.apx — アプリ定義(EMP CRUD)

    - pages/p00001-home.apx — ホームページ

    - pages/p00002-emp-report.apx — 対話モード・レポート(EMP一覧)

    - pages/p00003-emp-form.apx — 従業員フォーム(モーダルダイアログ)

    - pages/p09999-login.apx — ログインページ

    - shared-components/ — 認証・ナビゲーション・LOV(DEPT, MGR)等

  3. アプリケーション機能:

    - Page 2: EMPの対話モードレポート(行クリックで編集フォームへ、Createボタンで新規作成)

    - Page 3: モーダルダイアログフォーム(Create/Save/Delete/Cancelボタン)

    - ダイアログクローズ後に自動でIRをリフレッシュ

  4. 検証・インポート:

    - apex validate -input .検証成功(警告なし)

    - apex import -input .インポート成功アプリケーションID: 112(ワークスペース: APEXDEV)


Crunched for 44m 14s


recap: EMP_CRUDアプリケーション(対話モードレポート+フォーム)をAPEXDEVワークスペースにインポート完了

  (アプリID: 112)。次はAPEX Builderでアプリの動作確認を行ってください。 (disable recaps in /config)


─────────────────────────────────────────────────────────────────────────────────────────────────────────

❯  

─────────────────────────────────────────────────────────────────────────────────────────────────────────

  ⏵⏵ accept edits on (shift+tab to cycle)                                         4% until auto-compact


Codexと同様にAPEXアプリケーションの作成まで実施されます。こちらは、編集アイコンがきちんと作成されています。


編集画面を開くとこちらは「Form DML or Initialization process does not have a form region assigned.」のエラーが発生しました。これは、フォームの初期化プロセス自体が作成されていません。


フォームの初期化プロセスを追加すると、フォームが正しく開きました。


それぞれの作業ディレクトリのapplications/EMP_CRUD以下に、APEXlang形式で出力されたAPEXアプリケーションのエクスポートが含まれています。

emp-crud-code % ls -R applications/EMP_CRUD 

application.apx page-groups.apx shared-components

deployments pages supporting-objects


applications/EMP_CRUD/deployments:

default.json


applications/EMP_CRUD/pages:

p00000-global-page.apx p00002-emp-report.apx p09999-login.apx

p00001-home.apx p00003-emp-form.apx


applications/EMP_CRUD/shared-components:

authentications.apx build-options.apx lovs.apx

authorizations.apx component-settings.apx static-files.apx

breadcrumbs.apx lists.apx themes


applications/EMP_CRUD/shared-components/themes:

universal-theme


applications/EMP_CRUD/shared-components/themes/universal-theme:

theme.apx


applications/EMP_CRUD/supporting-objects:

supporting-objects.apx

ynakakoshi@Ns-Macbook emp-crud-code % 




Google Gemini CLI



Google Gemini CLIでも同様の作業を行ってみます。

Gemini CLIのapm installのターゲットはgeminiです。

apm install --target gemini

MCPサーバーは.gemini/settings.jsonに設定します。
{
  "mcp": {
    "allowed": ["oracle-apexdev"],
    "excluded": []
  },
  "mcpServers": {
    "oracle-apexdev": {
      "command": "/opt/homebrew/Caskroom/sqlcl/26.1.2.132.1334/sqlcl/bin/sql",
      "args": ["-R", "4", "-mcp"],
      "env": {},
      "trust": false
    }
  }
}
以上で、Gemini CLIを使ってAPEXアプリケーションを生成する準備ができました。

Gemini CLIを起動します。

gemini

Codexと同じプロンプトを与えます。

     Gemini CLI v0.42.0

  

     Signed in with Google /auth

     Plan: Gemini Code Assist in Google One AI Pro /upgrade



  Skill conflict detected: "graal" from "/Users/ynakakoshi/.agents/skills/graal/SKILL.md" is overriding the same skill from

   "/Users/ynakakoshi/.gemini/skills/graal/SKILL.md".


  Skill conflict detected: "db" from "/Users/ynakakoshi/.agents/skills/db/SKILL.md" is overriding the same skill from

   "/Users/ynakakoshi/.gemini/skills/db/SKILL.md".


  Skill conflict detected: "apex" from "/Users/ynakakoshi/.agents/skills/apex/SKILL.md" is overriding the same skill from

   "/Users/ynakakoshi/.gemini/skills/apex/SKILL.md".


  Skill conflict detected: "db" from "/Users/ynakakoshi/Documents/emp-crud-gemini/.agents/skills/db/SKILL.md" is overriding the same skill from

   "/Users/ynakakoshi/.agents/skills/db/SKILL.md".


  Skill conflict detected: "apex" from "/Users/ynakakoshi/Documents/emp-crud-gemini/.agents/skills/apex/SKILL.md" is overriding the same skill from

   "/Users/ynakakoshi/.agents/skills/apex/SKILL.md".

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄

 > 1. MCPサーバーoracle-apexdevで、データベースlocal-26ai-apexdevに接続してください。                                                                            

   2. local-26ai-apexdevはユーザーapexdevで接続されています。これはAPEXワークスペースAPEXDEVのパーシング・スキーマです。                                         

   3. スキーマAPEXDEVには表EMPが存在します。                                                                                                                     

   4.                                                                                                                                                            

   APEXlangのスキルを参照して、表EMPの一覧を表示する対話モード・レポートのページと、従業員の作成、更新、削除ができるフォームを持つAPEXアプリケーションEMP_CRUDを 

   作成してください。                                                                                                                                            

   5. アプリケーションはディレクトリapplications以下にEMP_CRUDとして作成してください。                                                                           

   6. アプリケーションのインポートはMCPサーバーではなく、applications/EMP_CRUDに移動した後に、"sql -name local-26ai-apexdev"でSQLclを起動し、"apex               


  Database Connection and Schema Discovery: Initializing the project and connecting to the database to retrieve schema information for the EMP table.


╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮

  connect (oracle-apexdev MCP Server) {"connection_name":"local-26ai-apexdev","model":"gemini-2.0-flash-exp"}                                           

                                                                                                                                                         

DATABASE CONNECTION ESTABLISHED ###                                                                                                                      

Successfully connected to: local-26ai-apexdev                                                                                                            

                                                                                                                                                         

DATABASE ENVIRONMENT CONTEXT ###                                                                                                                         

                                                                                                                                                         

1. Oracle Database Version:                                                                                                                              

23.26.1.0.0                                                                                                                                              

2. Access Mode:                                                                                                                                          

The Oracle database is currently in 'READ WRITE' mode                                                                                                    

3. NLS Parameters:                                                                                                                                       

The current Oracle database uses the following NLS configuration:                                                                                        

Database character set:{"results":[{"columns":[{"name":"PARAMETER","type":"VARCHAR2"},{"name":"VALUE","type":"VARCHAR2"}],"items":                       

[                                                                                                                                                        

{"parameter":"NLS_CHARACTERSET","value":"AL32UTF8"}                                                                                                      

]}]}                                                                                                                                                     

                                                                                                                                                         

  Full NLS parameters:                                                                                                                                    

{"results":[{"columns":[{"name":"PARAMETER","type":"VARCHAR2"},{"name":"VALUE","type":"VARCHAR2"}],"items":                                              

[                                                                                                                                                        

{"parameter":"NLS_RDBMS_VERSION","value":"23.0.0.0.0"}                                                                                                   

,{"parameter":"NLS_NCHAR_CONV_EXCP","value":"FALSE"}                                                                                                     

,{"parameter":"NLS_LENGTH_SEMANTICS","value":"BYTE"}                                                                                                     

,{"parameter":"NLS_COMP","value":"BINARY"}                                                                                                               

,{"parameter":"NLS_DUAL_CURRENCY","value":"$"}                                                                                                           

,{"parameter":"NLS_TIMESTAMP_TZ_FORMAT","value":"DD-MON-RR HH.MI.SSXFF AM TZR"}                                                                          

,{"parameter":"NLS_TIME_TZ_FORMAT","value":"HH.MI.SSXFF AM TZR"}                                                                                         

,{"parameter":"NLS_TIMESTAMP_FORMAT","value":"DD-MON-RR HH.MI.SSXFF AM"}                                                                                 

,{"parameter":"NLS_TIME_FORMAT","value":"HH.MI.SSXFF AM"}                                                                                                

,{"parameter":"NLS_SORT","value":"BINARY"}                                                                                                               

,{"parameter":"NLS_DATE_LANGUAGE","value":"AMERICAN"}                                                                                                    

,{"parameter":"NLS_DATE_FORMAT","value":"DD-MON-RR"}                                                                                                     

,{"parameter":"NLS_CALENDAR","value":"GREGORIAN"}                                                                                                        

,{"parameter":"NLS_NUMERIC_CHARACTERS","value":".,"}                                                                                                     

,{"parameter":"NLS_NCHAR_CHARACTERSET","value":"AL16UTF16"}                                                                                              

,{"parameter":"NLS_CHARACTERSET","value":"AL32UTF8"}                                                                                                     

,{"parameter":"NLS_ISO_CURRENCY","value":"AMERICA"}                                                                                                      

,{"parameter":"NLS_CURRENCY","value":"$"}                                                                                                                

,{"parameter":"NLS_TERRITORY","value":"AMERICA"}                                                                                                         

,{"parameter":"NLS_LANGUAGE","value":"AMERICAN"}                                                                                                         

]}]}                                                                                                                                                     

20行が選択されました。                                                                                                                                   

                                                                                                                                                         

  This is important for correctly interpreting data formats, encodings, and locale-specific behavior.                                                     

                                                                                                                                                         

Here’s the Oracle database context you need: version, open mode, and NLS parameters. Use this information to run the following queries accurately and    

ensure they align with the database’s current environment and settings.                                                                                  

                                                                                                                                                         

  Activate Skill "db": Oracle Database guidance for SQL, PL/SQL, SQLcl, ORDS, administration, app development, performance, security, migrations, and a

                                                                                                                                                         

Skill db activated. Resources loaded from /Users/ynakakoshi/Documents/emp-crud-gemini/.agents/skills/db:                                                 

                                                                                                                                                         

Showing up to 200 items (files + folders).                                                                                                               

                                                                                                                                                         

/Users/ynakakoshi/Documents/emp-crud-gemini/.agents/skills/db/                                                                                           

├───SKILL.md                                                                                                                                             

├───admin/                                                                                                                                               

  ├───backup-recovery.md                                                                                                                               

  ├───dataguard.md                                                                                                                                     

  ├───redo-log-management.md                                                                                                                           

  ├───rman-basics.md                                                                                                                                   

  ├───undo-management.md                                                                                                                               

  └───user-management.md                                                                                                                               

├───agent/                                                                                                                                               

  ├───client-identification.md                                                                                                                         

  ├───destructive-op-guards.md                                                                                                                         

  ├───idempotency-patterns.md                                                                                                                          

  ├───intent-disambiguation.md                                                                                                                         

  ├───nl-to-sql-patterns.md                                                                                                                            

  ├───ora-error-catalog.md                                                                                                                             

  ├───safe-dml-patterns.md                                                                                                                             

  └───schema-discovery.md                                                                                                                              

├───appdev/                                                                                                                                              

[これ移行、色々と処理が継続します。]




ところどころで、許可を求められます。


Google Geminiでも最終的にAPEXアプリケーションが作成され、ワークスペースにインポートされました。

... first 5 lines hidden (Ctrl+O to show) ...                                                                                                       

接 続 先 :                                                                                                                                          

Oracle AI Database 26ai Free Release 23.26.1.0.0 - Develop, Learn, and Run for Free                                                                 

Version 23.26.1.0.0                                                                                                                                 

                                                                                                                                                     

ア プ リ ケ ー シ ョ ン ID: 117を ワ ー ク ス ペ ー ス : APEXDEVに イ ン ポ ー ト し て い ま す                                                    

イ ン ポ ー ト に 成 功 し ま し た 。                                                                                                              

                                                                                                                                                     

Oracle AI Database 26ai Free Release 23.26.1.0.0 - Develop, Learn, and Run for Free                                                                 

Version 23.26.1.0.0か ら 切 断 さ れ ま し た                                                                                                       

╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

    WriteFile  p00002-employees.apx → Accepted (+9, -0)


      32       appearance {

      33           template: @/interactive-report

      34       }

      35 +     link {

      36 +         linkColumn: customTarget

      37 +         target: {

      38 +             page: 3

      39 +             items: {

      40 +                 P3_EMPNO: #EMPNO#

      41 +             }

      42 +         }

      43 +     }

      44   )

      45

      46   button create-emp (


╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮

  Shell cd applications/EMP_CRUD && sql -name local-26ai-apexdev <<EOF                                                                             

                                                                                                                                                     

... first 5 lines hidden (Ctrl+O to show) ...                                                                                                       

接 続 先 :                                                                                                                                          

Oracle AI Database 26ai Free Release 23.26.1.0.0 - Develop, Learn, and Run for Free                                                                 

Version 23.26.1.0.0                                                                                                                                 

                                                                                                                                                     

ア プ リ ケ ー シ ョ ン ID: 118を ワ ー ク ス ペ ー ス : APEXDEVに イ ン ポ ー ト し て い ま す                                                    

イ ン ポ ー ト に 成 功 し ま し た 。                                                                                                              

                                                                                                                                                     

Oracle AI Database 26ai Free Release 23.26.1.0.0 - Develop, Learn, and Run for Free                                                                 

Version 23.26.1.0.0か ら 切 断 さ れ ま し た                                                                                                       

╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯


I have successfully created and imported the APEX application EMP_CRUD.


  Work Completed

   1. Database Connection: Connected to the local-26ai-apexdev database using the apexdev user.

   2. Schema Discovery: Retrieved the structure of the EMP table to identify primary keys and data types.

   3. Application Generation: 

       - Created the application structure in applications/EMP_CRUD using APEXlang.

       - Defined a Home Page (Page 1).

       - Defined an Employees Report Page (Page 2) using an Interactive Report on the EMP table, including a "Create" button and links to the form.

       - Defined an Employee Form Page (Page 3) with Create, Update, and Delete capabilities, including automatic row processing and validation-guarded

         buttons.

       - Configured Navigation Menus and Shared Components (Theme, Authentication, etc.) based on the standard APEX scaffold.

   4. Import and Validation: 

       - Resolved several APEXlang compilation and import errors related to property names, component nesting, and data type constraints in APEX 26.1.

       - Navigated to the application directory and executed apex import via SQLcl as requested.

       - The application was successfully imported with Application ID: 118.


  Application Structure in applications/EMP_CRUD

   - application.apx: Root application definition.

   - pages/:

       - p00001-home.apx: Landing page.

       - p00002-employees.apx: Interactive Report on EMP.

       - p00003-employee.apx: Form for EMP CRUD operations.

       - p09999-login.apx: Standard login page.

   - shared-components/: Lists, Breadcrumbs, Themes, etc.


  You can now access the application in your APEX workspace.


  [Active Topic: APEX Application Import]


● auto edit                                                                                                                        press tab twice for more

────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

 ● auto edit

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄


CodexやClaude Codeと同様に、APEXアプリケーションは作成されましたが、そのままで利用できるようなアプリケーションではありませんでした。

Codex、Claude Code、Gemini CLIのどれでも、最終的にAPEXアプリケーションが作成されワークスペースにインポートできました。作成するアプリケーションについてはプロンプト次第ですが、データベースの表定義を参照して、APEXのページを生成するという、APEXのアプリケーション作成の基本的なワークフローは、オラクルから提供されているスキルに実装されています。

今回の記事は以上になります。

Oracle APEXのアプリケーション作成の参考になれば幸いです。