Oracle 数据库入门(二)SQL Plus 的使用

简介

SQL Plus 是 Oracle 数据库提供的一个专门用于数据库管理以及开发的工具,它可以通过执行 SQL Plus 专有命令、SQL 语句以及 PL/SQL 程序同数据库进行交互

通过 SQL Plus 主要可以完成如下操作:

  1. 连接数据库实例并执行数据库操作
  2. 编写、运行和调试 SQL 以及 PL / SQL 程序
  3. 格式化查询结果、报表生成、打印以及存储等

启动 SQL Plus

在操作系统的命令行操作界面中,使用如下格式快速启动 SQL Plus

sqlplus [username]/[password] [@connect_identifier] [nolog]
//示例
sqlplus system/123
sqlplus system/123@orcl		//指定连接的数据库实例
sqlplus /nolog				//启动 SQL Plus

其中 @connect_identifier 用于指定要连接的数据库实例,如果省略则连接到操作系统环境变量 oracle_sid 设置的数据库实例,oracle_sid 没有设置则为 Oracle 安装时默认的数据库实例
如果只是启动 SQL Plus 而不连接任何数据库实例,则可以只使用 nolog 参数

常用命令

SQL Plus 命令可以分为连接命令、缓冲区命令、文件操作命令、交互式命令、环境变量操作命令以及格式化查询结果命令等类型

  1. 连接命令
//如果以管理员身份连接需要声明 "as sysdba" 或 "as sysoper"
connect [username]/[password] [@connect_identifier]
//示例
connect system/123@orcl as sysdba
//断开当前与数据库实例的连接
discconnect
  1. 缓冲区操作命令
list	//显示 SQL Plus 的 SQL 缓冲区中的内容
edit	//启动操作系统默认的文本编辑器显示缓冲区内容
clear buffer	//直接清除缓冲区中的内容
  1. 文件操作命令
//将 SQL 缓冲区的内容保存到一个文本文件中
//create 表示新建文件,为默认选项; 当已存在同名文件时,replace 选项表示覆盖已有文件,append 选项表示在原有文件后添加新的内容
save filename [create]|[replace]|[append]
save d:\test.sql replace
//将磁盘中的 SQL 脚本文件载入到 SQL 缓冲区中
//list 选项用于显示脚本内容,no list 选项不显示脚本内容
get filename [list]|[no list]
get d:\test.sql list
//直接执行 SQL 脚本文件
start filename
start d:\test.sql
//将 SQL Plus 的屏幕内容保存到文本文件中
spool filename
spool d:\testspool.txt
.....	//要保存的内容
spool off
  1. 交互式命令
//& 命令
//用于在 SQL 语句或 PL/SQL 程序中定义替换变量,如果一个标识符前有 & 符号,则 SQL Plus 认为该标识符是一个替换变量,在执行时将提示用户输入值
//当一个替换变量前有两个 & 符号时,则该替换变量只需输入一次即可在当前 SQL Plus 运行环境中一直有效
select empno from emp where empno=&no
//define 命令
//用于预定义替换变量并且指定初始值,当 SQL 语句或 PL/SQL 程序有引用该变量时将自动替换为初始值
define no = 7369
select empno, ename from emp where empno=&no
select empno, ename from emp where empno=7369
//variable 命令
//用于定义可以在 SQL 语句以及 PL/SQL 程序中直接引用的绑定变量,可以利用绑定变量返回 PL/SQL 程序的运行结果
//variable_dataType 为Oracle 数据库支持的数据类型,使用 execute 命令绑定变量赋值,使用 print 命令输出绑定变量的值
variable variable_name variable_dataType
variable v_no number
execute :v_no:=7369
//prompt、pause 与 accept 命令
//prompt 命令用于输出提示信息,pause 命令用于暂停程序执行,等待用户按回车键继续运行,accept 命令用于让用户指定替换变量的名称和类型
prompt 输入员工编号查询员工工资
promot 按 Enter 键继续
pause
accept no number prompt '请输入员工编号'
select empno、sal from emp where empno=&no;
  1. 格式化查询结果命令
//column 命令
//用于改变查询结果默认的列标题,其中 heading 用于指定列标题,justify 指定标题的对齐方式,format 用于重新定义列的宽度和显示格式
column column_name  [heading column_heading] [justify left|center|right] [format format]
column empno heading 员工编号 justify left
column empname heading 员工编号 justify center
column sal heading 工资 format $99,999.00
//ttitle、btitle、repheader 与 repfooter 命令
//ttitle 命令用于为报表的每页设置上标题,btitle 为报表的每页设置下标题,repheader 命令为报表设置表头,repfooter 命令用于为报表设置脚注,各命令均可使用 left、center 或者 right 控制输出位置
repheader center '员工信息表'
repfooter center '报表制作:人力资源部'
ttitle right '销售部员工'
btitle center '报表日期:2019年12月12日' 
  1. 其他命令
//describe 命令
//用于显示数据库对象的结构信息,可以缩写为 desc
desc emp
//clear screen
//清屏命令
clear screen
//help 命令
//查看 SQL Plus 命令的帮助信息,可以使用 'help index' 列出 SQL Plus 的所有命令,使用 'help 命令名称' 显示该命令的作用及使用语法
help index
help list
发布了19 篇原创文章 · 获赞 7 · 访问量 5941

猜你喜欢

转载自blog.csdn.net/CSDN_handsome/article/details/103417333
今日推荐