

点击上方蓝字关注我们


加入我们,你将获得不仅仅是知识,还能享受免费GPT4-tubro微信机器人+Oracle MOS免费查询+ACE大佬交流,很多志同道合的小伙伴,欢迎加群一起探讨、一起学习、一起进步!
扫描下方联系方式二维码添加作者微信,回复“加入DBA群”即可开启你的数据库和IT学习之旅。

简 介
Oracle SQLcl(SQL Command Line)是Oracle提供的一款现代化的命令行工具,用于与Oracle数据库交互。它是传统SQL*Plus工具的继任者,添加了许多新功能和改进,使得与数据库的交互更加高效和用户友好。SQLcl构建于Java基础之上,支持所有主流操作系统,包括Windows、Linux和macOS。
主要功能和特点
1. 兼容性:
SQLcl 完全兼容 SQL*Plus,这意味着所有SQL*Plus脚本和命令在 SQLcl 中无需修改即可运行。
2. 优化的命令行界面:
支持命令自动补全和语法高亮,提高了命令行操作的便利性和可读性。
支持命令历史功能,可以方便地回溯和重新执行以前的命令。
提供更丰富的格式化选项,使输出结果更易于阅读和分析。
3. 扩展命令:
引入了新的命令,如 `info`、`history`、`cd`、`ls` 等,增强了与数据库对象的互动。
`info` 命令用于快速查看表、视图、索引等对象的详细信息,类似于GUI工具中的对象浏览器。
`history` 命令可以查看和重新执行历史命令。
4. 脚本执行和调试:
支持JavaScript和SQL的混合编写,可在SQLcl中直接运行JavaScript代码。
提供调试工具,帮助检查和修正SQL脚本中的错误。
5. 输出格式化:
支持多种输出格式,包括 CSV、HTML、JSON、XML、Delimited 和 Fixed 等,方便数据的进一步处理和展示。
用户可以通过设置来调整输出格式,以适应不同的报告和数据分析需求。
6. 集成开发环境支持:
虽然是命令行工具,SQLcl 也可以与Oracle SQL Developer无缝集成,提供图形界面和命令行操作的灵活选择。
7. 轻量级工具:
作为一个基于Java的工具,SQLcl 可以在任何支持Java的平台上运行,且安装简单,便于携带和使用。
使用场景
数据库管理:数据库管理员可以使用SQLcl进行数据库的日常管理任务,如执行SQL脚本、管理用户权限、监控数据库状态等。
开发和测试:开发者可以利用SQLcl进行数据库查询、脚本调试和性能优化等工作。
自动化任务:SQLcl的命令行特性使其非常适合用于自动化脚本和批处理任务,可以简化复杂的数据库操作流程。
安装步骤与用例
下载地址:https://pan.baidu.com/s/14M6PuQ1lwrBWHfCqQR6unw?pwd=1234提取码:1234
安装前注意:SQLcl需要Java 11及以上版本才能运行。
1、解压sqlcl安装包
[root@localhost oracle]# unzip sqlcl-24.1.0.087.0929.zip##修改sqlcl工具的属组[root@localhost oracle]# chown oracle:oinstall -R sqlcl
2、运行sqlcl
[root@localhost oswbb]# su - oracle[oracle@localhost.localdomain:/home/oracle]$cd u01/app/oracle/sqlcl/bin[oracle@localhost.localdomain:/u01/app/oracle/sqlcl/bin]$ls -lsrttotal 220-rw-rw-rw- 1 oracle oinstall 3198 Mar 27 09:30 dependencies.txt-rw------- 1 oracle oinstall 0 Apr 17 13:24 history.log-rwxr-xr-x 1 oracle oinstall 29816 Mar 27 09:29 sql-rw-r--r-- 1 oracle oinstall 180288 Mar 27 09:30 sql.exe-rw-rw-rw- 1 oracle oinstall 152 Mar 27 09:30 version.txt[oracle@localhost.localdomain:/u01/app/oracle/sqlcl/bin]$./sql sys/oracle@10.10.120.198/orcl as sysdba

常用 SQLcl 命令
1. CONNECT
用于连接到数据库。
CONNECT username/password@hostname:port/service_name
2. DESCRIBE (DESC)
显示表、视图或其他对象的结构。
DESC employees
3. SELECT
查询命令
SELECT * FROM employees WHERE department_id = 10;
4. EXECUTE (EXEC)
执行单个 PL/SQL 语句。
EXEC dbms_stats.gather_table_stats('SCOTT', 'EMP');
5. INFO
提供指定对象的详细信息。
INFO employees
6. HELP
帮助命令
HELP

7. SCRIPT
运行 SQL、PL/SQL 或 JavaScript 脚本文件。
SCRIPT path/to/script.sql
8. HISTORY
显示或执行历史命令。
HISTORYHISTORY 3 RUN
9. LOAD
将数据从文件加载到表中。
LOAD data.csv INTO TABLE employees APPEND
10. SPOOL
将查询结果或命令输出重定向到文件。
SPOOL output.logSELECT * FROM employees;SPOOL OFF
11. CTAS
使用 `CREATE TABLE AS SELECT` 快速创建表
CTAS t1 new_t1;
12. EDIT
直接执行 SQL 文件,不显示内容。
EDIT /path/to/file.sql
Oracle SQLcl 为数据库专业人员提供了一个强大、灵活且易于使用的工具,极大地增强了Oracle数据库的交互体验。
往期推荐
Oracle oswbb工具安装与介绍
Oracle应急使用指南
Oracle的SQL调化健康检查脚本介绍
Oracle 11.2.0.4 RAC环境节点重新添加
DBA如何平衡Oracle与国产数据库的工作需求




