SQL*Plus 简介
SQL*Plus 是甲骨文公司出品的一款官方命令行工具,用于与 Oracle 数据库进行交互。它随 Oracle 数据库或客户端软件自动安装,是所有 Oracle DBA 和开发人员最基础、最通用的工具之一。
历史渊源
SQLPlus**是 Oracle 现存最古老的工具,其前身是 80 年代中期名为 UFI 的接口。从 Oracle 5 版本开始,它正式更名为 SQL Plus,并一直沿用至今。
核心功能与常见命令
作为一种命令行界面,SQL*Plus 能执行标准 SQL 查询和复杂的 PL/SQL 代码。其核心能力体现在其丰富的内置命令上,这些命令主要分为以下几类:
| 命令类别 | 描述 | 常用命令 |
|---|---|---|
| 连接与会话管理 | 建立、切换或断开与数据库的连接 | CONNECT username/password@database, DISCONNECT, EXIT |
| 脚本执行与文件操作 | 执行外部 SQL 脚本文件,或将当前缓冲区的内容保存和加载到文件 | @script.sql (或 START script.sql), SAVE filename, GET filename, EDIT |
| 格式化与输出 | 定制查询结果的显示格式,生成美观的报表,或通过 SPOOL 命令将输出保存到文件中 | COLUMN column_name FORMAT A20, SET LINESIZE 120, SET PAGESIZE 30, SPOOL report.txt |
| 环境与变量设置 | 通过 SET 命令调整会话环境(如自动提交、显示宽度等),或使用变量实现交互式脚本 | SET SERVEROUTPUT ON, SET TIMING ON, DEFINE var=value, ACCEPT var PROMPT '...' |
| 对象与状态查询 | 快速查看数据库对象的定义或当前会话状态 | DESCRIBE table_name, SHOW USER, SHOW ALL |
两种工作模式
使用 SQL*Plus 主要有两种模式:
- 交互式模式 :直接打开终端或命令提示符窗口,输入命令并实时查看结果。
- 脚本化模式 :这是 SQLPlus**最强大的地方。用户可以将一系列 SQL 、 PL/SQL 和 SQL Plus 命令写入一个 .sql 文本文件,然后通过命令一次执行,非常适合自动化运维任务。