26.2.1 - Aug 2026
Issues Fixed
- Security fixes
26.2 - Jul 2026
New Features
- SQLcl Projects now support APEXLang applications.
- Shell execution for SQLcl commands.
- SQLcl commands can be run from the shell with repeatable
-eor-executeoptions before SQLcl exits. - Example:
sql -e 'select date' -e 'select user' -name myconn. - SQLcl project stage changelog processing has improved performance and error handling.
- Project release adds Liquibase tags for generated release changelogs.
- All keyboard shortcuts are now fully customizable.
- Example:
KEYMAP bind emacs ^E history-incremental-search-backwardbinds Ctrl-E to reverse history search in Emacs mode. - SET now supports default values.
- SET now supports default values.
Issues Fixed
DIFFartifact output paths outside the current working directory.- Project stage 'revoke generation' for object names that contain the substring to '.'.
- Project changelog generation so object grants are ordered after their referenced objects.
- Project stage output so action comments are preserved in generated changelogs.
- Project stage failures when SQLcl snapshot metadata contains large SXML text.
- SQLcl project deploy so generated Oracle APEX deploy controllers apply fixed import offsets.
- Oracle APEX export so existing files are not overwritten unless
-overwrite-filesis specified. - Oracle APEX component export so multiple export types create all requested files.
- Command help navigation when using command aliases.
DESCRIBEoutput for object types so method signatures are shown.DESCRIBEbehavior for synonyms whose target object is not visible to the current user.- SQLcl startup so Oracle Cloud Infrastructure profile refresh failures do not terminate command startup.
- Liquibase formatted SQL execution so PL/SQL blocks and colon-containing comments run correctly with the default engine.
- Liquibase action logging so
DATABASECHANGELOG_DETAILSis recreated as a valid view during update repair. - Liquibase action logging for long SQL and SXML changeset content.
Supported Java Versions
- Oracle Java 17, 21 or Java 25
- Local JavaScript scripting support requires a supported GraalVM runtime with the JavaScript Plugin.
26.1.2 - May 2026
New Features
APEXlang support
- Full SQLcl support for the Open Application Specification Language (APEXlang), Oracle's new declarative language for APEX applications. APEXlang gives APEX apps an AI-friendly, human-readable representation, meaning agents like Claude and Codex can generate, modify, and review them directly. Its available in the APEX command. SQLcl Projects will support this in the next major release.
- Added a new Skills command to install Oracle prescribed skills from Oracle Github repository to your local model skills folder. Use this to install skills to support APEXLang use with APEX 26.1
Issues Fixed
- SQLcl MCP startup now defaults to unrestricted. This was previously set to restriction level 4
- SQLcl MCP startup now defaults to unrestricted. This was previously set to restriction level 4SQLcl Project exports now working for large APEX applications
- SQLcl Projects updated default filters to exclude all default liquibase generated objects
Supported Java Versions
- Oracle Java 17, 21
- Oracle GraalVM Enterprise Edition for Java 17, 21
- JavaScript support requires GraalVM for Java 17 with the JavaScript Runtime plugin
26.1 - Apr 2026
New Features
- SQLcl MCP
- Schema-information tool now supports filtering and ability to retrieve details for other schemas.
- New prompts.
- Connection helper.
- Develop ORDS REST API.
- CI/CD Projects
- Now supports schema substitution, allowing you to export objects with a schema prefix and deploy them into a different schema.
- Project stage now handles dependent objects more reliably during drop-and-recreate flows (for example, preserving related indexes and grants when a base object such as a materialized view is recreated).
- Now includes scheduler job arguments and program arguments in export and stage operations, expanding support for Oracle Database Scheduler objects.
- Cleaner hotfix releases with new selective controls (
-include/-exclude), enabling you to choose exactly which changes ship and automatically generate a focused changelog.
- General
- New
DIFFcommand compares a source and target database connection, detects schema drift, and generates the DDL changes needed to synchronize the target. - Enhanced LOAD XLS adds support for quoted identifiers and column reordering; the SQL Developer Extension for VS Code now also shows richer worksheet preview details.
- New connection export/import supports SQLcl connection definitions.
OBJECTSTORAGEnow supports listing and deleting objects in OCI Object Storage buckets, expanding SQLcl’s built-in access to bucket contents.ORAPKInow supports certificate download, simplifying Oracle PKI wallet setup.
- New
Issues Fixed
- Project export omitted identity‑column attributes, role grants, system grants, and other required metadata
- Project stage could generate incorrect diffs, duplicate changelog entries, or invalid output for specific object types
- Fixed terminal input handling, including backspace behavior and line‑number display
- Fixed tab completions in connection handling and connection‑parameter processing
25.4.1 - Jan 2026
New Features
MCP Tool, run-sql-aync
- This feature was previously released as part of the run-sql tool, but was causing issues for certain Agent frameworks. We have added explicit support for this feature to run queries on a background thread via a named tool.
Issues Fixed
- Forums - Backspace character not being recognized on Windows GIT Bash terminals
25.4 - Dec 2025
New Features
- MCP Updates
- run-sql, asynchronous queries
- The run-sql tool supports submitting a query to be ran on a background task.
- The agent will be given a job-id that can be used to retrieve the results of the query or script at a later point in time.
- Configuration
- A new argument
-homeallows you to specify the directory where your database connections will be stored. - This allows for a developer to use one set of connections for regular work via SQL Developer Extension for VS Code and SQLcl, and another set specifically for AI Agents via the MCP Server.
- A new argument
- run-sql, asynchronous queries
- Project Enhancements
- Object Support
- CI/CD support for
DBMS_SCHEDULERnow includes:- Job classes
- Scheduler groups
- Chains
- CI/CD support for
- Verifications
project verifyallows you to validate the structure of your project with many new tests.- Enforce the use of the correct named connection whenever a project command is executed.
- Respect the version of SQLcl the project requires.
- Validate the source code formatter rules.
- Validate syntactic and semantic errors for filters used in export.
- Ensure there are no change entries pointing to invalid or external files.
- Ensure there are no duplicate release pointers, changelog pointers, or file pointers across releases.
- Ensure all changes under
src/databaseare accounted for in the current ticket. - Verify project folder structure based on the
SoftObjectIsolationvalue. - Ensure
SoftObjectIsolationis not modified during a release.
- Object Support
- SQL History
- Incremental search:
Alt+R, enter search term,Ctrl+Rto execute. - Automatic suggestions: enable with
SET AUTOSUGGESTIONS on; suggestions appear from SQL history and can be accepted with the right arrow key.
- Incremental search:
- VERSION Command
versionreplacesshow versionand displays the SQLcl version.- Can be used to restrict usage to approved versions.
- Examples:
versionversion -check-in 25.2.0,25.3.0,25.4
- Console/Editor Improvements
- Tab completion for SQLcl commands and command arguments.
-
set linenumbers on|offprovides flexible control over line number visibility in multi-line SQL statements (on by default). - Help for all commands has been updated to a more verbose, descriptive, paginated, and searchable format (use
/search term). - For help on a topic, use
help <topic>. - Sample Help Topics
/— Executes the most recently executed SQL command or PL/SQL block.@— Runs SQLcl statements in a specified script (local or web).@@— Runs nested scripts, resolving relative paths from the calling script.ACCEPT— Reads input and stores it in a substitution variable.ALIAS— Saves SQL/PLSQL/SQL*Plus scripts as shortcut commands.APEX— Exports APEX applications.
Issues Fixed
- Projects
- 38620219 project export does not respect session edition (EBR)
- 38716180 project export adds trailing semicolon (;) to view DDL
- 38651814 project export does not sort unique indexes consistently
- 38688471 project stage recreates ORDS modules vs updates even if already exists
- 38688658 project stage generates incorrect ALTER DDL when column has DEFAULT value
- 38688658 project stage now generates correct alters for changes to tables with 'not null' columns
- 38581517 project deploy does not generate log files on Windows
- Liquibase
- 38743930 updates for packages, package bodies, and synonyms have incorrect DDL
- 38655790 generate-schema -split -sql fails in Windows CMD terminal
- 38303058 generate-schema including FLASHBACK DATA ARCHIVE (FDA) INDEXES
- 38654885 table column changes not being picked up
- 38566458 quoted schema names cause generated objects to be unusable
- General
- 38412159 set define off after a merge statement causes re-execution of MERGE
- 33094416 BREAK on multiple columns now works in SQLcl (e.g., BREAK ON COLUMN_N)
- 38566458 script parsers now recognize comments at the end of a PL/SQL unit
- 38538544 apex export -exptype readable_yaml fails
- 38536583 SPOOL now respects SET HEADING OFF in ansiconsole format
25.3 - Oct 2025
New Features
- RCV command "Oracle Database backup integration with Zero Data Loss Autonomous Recovery Service." Learn more here
- Project verification feature (project verify) now offers more comprehensive error checking with your snapshots, stages, and artifacts
- Project CI/CD feature now supports DBMS_SCHEDULER objects including jobs, programs and schedules
- Projects can now export ORDS schema objects using ORDS_ADMIN API
Issues Fixed
- 38329182 MCP connections are not closed after calling close function
- 37884237 Some statements in a SQL file are not executed when using SET DEFINE
- 37481464 SELECT /*INSERT*/ concatenates BLOB column leads to ORA-01465
- 38343426 Cannot connect and save a cloud wallet connection
- 37339395 Using
ORAPKIwith JDK 21 and JDK 23 fails ("Security Manager is deprecated") - 37998699 Cannot drop or replace a type with table dependents
- 38049779 Invalid drop statements for the index
- 37679187 Logon help syntax does not include SYSBACKUP and SYSDG roles
- 38413946 Help SET DDL command text has formatting problems
- 36486442 Liquibase generate-schema suppresses byte information from VARCHAR2 data type
- 37301575 Liquibase SQL changeset doesn't print DBMS_OUTPUT
- 37338222 Liquibase fails to generate all APEX applications in a workspace
- 37423209 Liquibase generate-schema -grants command does not export grants
- 37355977 Liquibase update -changelog-file apex_install.xml fails when changeset generated using -exptype parameter
- 37423209 Liquibase generate-schema -grants command does not export grants
- 38292404 Liquibase export of ORDS module fails when module name is lowercase
- 37820786 Project configured connection not honored after disconnect
- 38273504 Project exports generate install.sql that references Liquibase XML instead of .sql file
- 37894895 Project deploy suppresses important error details
- 37902682 Project deploy creates log file in temp directory
- 38154484 Project SXML not consistent with case causing unnecessary diffs
- 37800584 Project unable to execute the generated/exported ORDS SQL files
- 38331290 Project export table causes invalid XML
- 38189337 Project stage fails to generate ALTER statements when built-in SQL functions like
EMPTY_CLOB()are used as defaults - 38441783 Project stage creates wrong ALTER SQLs for XMLTYPE data type columns
- 38440775 Project stage incorrect DDL for table column when set from NOT NULL to NULL
- 38063924 Project scripts using HOST and SPOOL commands fail unexpectedly
- 37862505 Project export list not properly sorted
- 38386782 Project export schema-level triggers (BEFORE DROP ON...) not included
25.2 - Jul 2025
New Features
- MCP Server for Oracle Database
- SQLcl can now run as a Model Context Protocol (MCP) Server, enabling access to Oracle Database via LLMs and AI coding assistants.
- Support for MCP tools includes CONNECTIONS and SQL tools, allowing LLMs to establish database connections and run SQL queries on behalf of users.
- SQLcl will receive monthly updates introducing new tools and prompts, including SQL execution plans, business reports, and data loading.
- VS Code Extension for SQL Developer will automatically register SQLcl as an MCP Server for code assistants such as Copilot.
- Learn more about MCP Server here.
- Daemon support: SQLcl can run as a background service, supporting scheduled tasks and providing detailed logging of events, job results, and errors.
- Projects Enhancements
- SQLcl projects now support JSON Relational Duality Views, MLE JavaScript modules, and Queues.
- 23ai object annotations are now included in your object definitions.
- Oracle Home Support
- THICK Connections on Windows
- A directory named
instantclient(typically insqlcl/bin) is combined withojdbc11.jarand prepended to the classpath. - An entry for
%ORACLE_HOME%is prepended afterinstantclient. - No strict version validation is performed, but logic determines whether
ORACLE_HOMEexists and whether thick mode should be enabled by default. - A misconfigured
ORACLE_HOME(for example, version earlier than 23) may result in connection errors when using the thick driver.
- A directory named
- THICK Connections on Linux/Unix/OS X
- The environment variable
ORACLE_HOMEis used to locate a full install or instant client. - For full installs,
$ORACLE_HOME/bin/oraversiondetermines the version. - For instant client installs, the native library
libocijdbc(filename includes version, e.g.,libocijdbc23.dylib) is used. - If the detected version is less than 23, the user is notified and
ORACLE_HOMEis ignored. - If version is at least 23,
ojdbc11.jaris prepended to the classpath and thick mode becomes the default driver.
- The environment variable
- Code Scan Improvements
- The
-list-rulessub-command now prints the list of available rules.
- The
- THICK Connections on Windows
Issues Fixed
- 37873859 CONN/[AS SYSRAC] fails in SQLcl
- 37305822 SET LOADFORMAT fails when using a single character enclosure
- 37306369 UNLOAD creates bad file when using multiple character left enclosure setting
- 37877963 PROJECT STAGE fails for OPERATOR
- 37646773 LIQUIBASE generate-schema fails for MATERIALIZED VIEW
- 37693799 LIQUIBASE generate-schema fails for PUBLIC SYNONYM
- 37841622 PROJECT no longer times out and honors Ctrl+C
- 37862023 PROJECT inconsistent list of objects included for EXPORT
- 37883553 PROJECT EXPORT omits WITH GRANT OPTION
- 37861204 AWR commands not working for RAC instances
- 37453387 APEX export not running correct queries for installed version of APEX
- 37260714 FORUMS: connect failing when using alias
- 37577080 FORUMS: parser error for table of records extend() function call
25.1 - Apr 2025
New Features
- Project Command (CI/CD)
- Materialized Views are now supported
- ORDS REST Modules are now supported
- Connections
- Connection folders support
- Added tab completion support
- Added delete connection to
connmgrcommand
- General
- JDBC 23.7 update
- Liquibase 4.30.0 update
- Added
SDKcommand to install JDBC extensions - Create MLE Module bundles and Software Bill of Materials (SBOM)
SET SQLFORMAT DELIMITEDnow supports SPACE as a delimiter- New aliases for listing local schema objects — in addition to
tables, you can now useindexes,views,functions,procedures,packages,synonyms, andtriggers
Issues Fixed
- 37566309 'Project Stage' duplicates 'APEX' folder in this directory
- 37260262 Describe tables fails if there's a table of a synonym of the same name
- 37603787 SQL aliases now support dashes
- 37556899 'Project Stage' sometimes creates uncommented drops
- 37692573 Project exports failed to close connection
- 37747098 Change set ordering not working with stage in Windows
- 37593892 Project stage sorting fails if add custom is called before stage
- 37663113 Liquibase execution of PL/SQL with warnings causes Liquibase to exit
- 37607778 Java app on large script sets memory leak
- 37075680 Liquibase generate-schema not capturing status for triggers
- 37734208 PL/SQL package body with a drop statement incorrectly gets commented out
