apex_run_sql
Execute any SQL statement (SELECT, DML, DDL) against Oracle APEX. Returns query results as JSON rows or affected row count for writes.
Instructions
Execute any SQL statement (SELECT/DML/DDL). Returns rows or affected count.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sql | Yes | SQL SELECT statement or PL/SQL anonymous block (BEGIN...END). For SELECT: returns rows as JSON array. For PL/SQL: executes and returns 'OK' or error message. | |
| max_rows | No | Maximum rows to return for SELECT (default 100, max 1000). | |
| bind_params | No | Optional dict of bind variables (e.g., {"id": 42, "name": "John"}). Use :variable_name in SQL and pass values here to prevent SQL injection. Example: apex_run_sql("SELECT * FROM my_table WHERE id = :id", bind_params={"id": 42}) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |