# Oracle SQLcl 25.2.0 Docker Image Documentation
## Description
Oracle SQL Command Line (SQLcl) is a free command line interface for Oracle Database. It allows you to interactively or batch execute SQL and PL/SQL. SQLcl provides in-line editing, statement completion, and command recall for a feature-rich experience, all while also supporting your previously written SQL*Plus scripts.
This image contains the latest SQLcl release available and can be used anywhere docker can run.
For more information about Oracle SQLcl refer to [OTN](https://www.oracle.com/database/technologies/appdev/sqlcl.html).
## **Using This Image**
## Pulling the SQLcl image
```
docker pull container-registry.oracle.com/database/sqlcl:latest
```
## Using SQLcl from outside the Container
To start a SQLcl instance execute the following command where <sqlcl-name> is the name of the container and <sqlcl-image> is the name of the image to start the container.
```
docker run --rm -it <sqlcl-image> [SQLcl options]
```
The SQLcl options are the parameters you give to a normal sqlcl instance installed locally.
So a real example would be
```
docker run --rm -it container-registry.oracle.com/database/sqlcl:latest system/password@localhost:1521/ORCL
```
## Using SQLcl from inside the Container
```
docker run --rm -it --name <sqlcl-name> <sqlcl-image>
```
```
$ docker run -it --rm container-registry.oracle.com/database/sqlcl:latest
SQLcl: Release 25.2 Production
Copyright (c) 1982, 2022, Oracle. All rights reserved.
SQL>
```
## Use a volume to load sql scripts
You can mount a directory with your sql scripts on the path `/opt/oracle/sql_scripts` to run your sql scripts from SQLcl
```
$ docker run -it --rm -v /tmp/sql/:/opt/oracle/sql_scripts/ container-registry.oracle.com/database/sqlcl:latest
SQLcl: Release 25.2 Production
Copyright (c) 1982, 2022, Oracle. All rights reserved.
SQL> @test.sql
Connected.
1
____
1
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
```
## Run SQLcl image with a simple command
Create a shell alias to call the SQLcl image and mount the sql_scripts as the current working directory path.
```
$ alias sqlcl='docker run -it --rm -v `pwd`:/opt/oracle/sql_scripts container-registry.oracle.com/database/sqlcl:latest'
$ cd /tmp/sql_scripts
$ sqlcl
SQLcl: Release 25.2 Production
Copyright (c) 1982, 2022, Oracle. All rights reserved.
SQL> @test.sql
Connected.
1
____
1
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
```
## Documentation
[https://docs.oracle.com/en/database/oracle/sql-developer-command-line/](https://docs.oracle.com/en/database/oracle/sql-developer-command-line/)
## Key Features
- In-Line Editor - edit multi-line statements and scripts interactively at the SQLcl prompt
- Change Management - native Liquibase integration, with automatic changelog generation for your Oracle Database objects
- Command History - cycle through your 100 previous scripts/commands
- Completion Insight - auto-complete object names or keywords using the tab key
- Other Commands - CTAS, DLL, Repeat, ALIAS, SCRIPT, FORMAT, and many more!
- Client Side Scripting - execute javascript to manipulate query results, build dynamic commands, interact with the session, and much more
- SQL*Plus Support - SQL*Plus environment settings, commands, and behaviors