SQL * PLUS 概述与常用命令

news/2025/3/14 16:37:32/

简介

    SQL * PLUS 是用户与oracle进行交互的客户端工具。在SQL*PLUS 中,用户可以执行输入的SQL语句、PL/SQL 语句,以及各种sql *plus命令,还可以格式化SQL,PL/SQL语句的输出结果等。

SQL*PLUS的命令类型:

  • SQL : 是指DDL 、DML和DCL命令等
  • PL/SQL : 通过命令编译的各种过程、函数、触发器和包等。
  • SQL*PLUS 内部命令 :主要用于设置查询时结果的格式化,保存、编辑、查看和执行SQL或PL/SQL 程序,一节设计一些环境变量等。

(1)启动与退出:

启动:
① 开始菜单法:开始–>所有程序–>oracle-oraDb11g_home1 -->应用程序开发–>sqlplus输入用户名,密码即可
②命令启动法:开始–>搜索程序和文件–>sqlplus -->找到sqlplus 输入用户名,密码即可
退出:
在界面的SQL> 后输入exit或者quit均可以退出。

(2)命令 *重点

describe命令 可缩写为desc:

         作用: 返回数据库中所存储对象的描述,如对于表、视图来说desc命令可以列出其各个列的名称以及各个列的属性;此外还可以输出过程、函数 程序包的规范。

desc  scott.emp;       -- 查询表结构
desc  dbms_output;  --查看系统dbms_output程序包的结构

prompt命令 :
         作用: 用来向屏幕发送消息,在我们需要编写程序与用户进行交互时,此命令可以给用户一定的提示。

SQL> prompt "请输入您的姓名";"请输入您的姓名"

define命令和accept命令 :
         作用:在sql语句中,需要定义变量时可以使用define和accept命令,变量定以后便可在程序中多次使用,使用undefine命令可以清除所定义的变量。
①define 用于创建一个数据类型为char的用户自定义变量

命令说明
define显示所有用户已定义的变量
define variable显示指定变量的名称,值和数据类型
define variable=value为用户创建一个char类型的变量 ,并赋值

①define undefine

SQL> defineDEFINE _DATE           = "28-9月 -18" (CHAR)DEFINE _CONNECT_IDENTIFIER = "orcl" (CHAR)DEFINE _USER           = "SCOTT" (CHAR)DEFINE _PRIVILEGE      = "" (CHAR)DEFINE _SQLPLUS_RELEASE = "1102000100" (CHAR)DEFINE _EDITOR         = "Notepad" (CHAR)DEFINE _O_VERSION      = "Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options" (CHAR)DEFINE _O_RELEASE      = "1102000100" (CHAR)
SQL> define test =1122
SQL> define testDEFINE TEST            = "1122" (CHAR) 
SQL> undefine test

②accept
可以定义一个变量,可可以制定一个用户提示,用于提示用户输入指定的数据

accept varibale [datatype] [format format] [prompt text] [hide]

  • vairbale 指定变量名,如果不存在则新建
  • datatype 制定变脸的数据类型 char munber date 默认为char
  • format 指定变量的格式
  • prompt text 用户输入数据之前的提示性文本
  • hide 用于隐藏用户为变量输入的值
SQL> accept temptno number prompt "请输入雇员编号:" hide
请输入雇员编号:
SQL> select empno ,ename from scott.emp where empno=&tempno;

替换变量:
         作用:在oracle数据库中,可以使用替换变量来临时存储有关数据,在运行sql语句时,如果某个变量前面有&符号,执行该sql语句时,系统会提示用户为该变量提供一个具体的值,如:&、 &&
①&替换变量
常用在 while、 order by 子句、列表达式、表名、整个select语句中来替换一些变量。

SQL> select ename ,sal ,job,hiredate from scott.emp where sal >&salnew;
输入 salnew 的值:  4900
原值    1: select ename ,sal ,job,hiredate from scott.emp where sal >&salnew
新值    1: select ename ,sal ,job,hiredate from scott.emp where sal >4900ENAME                       SAL JOB                HIREDATE
-------------------- ---------- ------------------ --------------
KING                       5000 PRESIDENT          17-11月-81

注意:如果替换变量是字符型数据,在输入值时,必须使用单引号将字符类型数据引起来,对字符类型或日期类型数据,在使用中如果用引号引用起来,当输入替换变量时就可以省略引号了。

SQL> select ename ,sal ,job,hiredate from scott.emp where ename =&salnew;
输入 salnew 的值:  'BLAKE'
原值    1: select ename ,sal ,job,hiredate from scott.emp where ename =&salnew
新值    1: select ename ,sal ,job,hiredate from scott.emp where ename ='BLAKE'ENAME                       SAL JOB                HIREDATE
-------------------- ---------- ------------------ --------------
BLAKE                      2850 MANAGER            01-5月 -81

②&&临时替换变量
在select语句中,如果需要重新使用一个变量并且不希望重新提示输入该值,那么可以使用&&替换便令,为了避免为同一个变量提供两个不同的值,且使得系统为同一个变量值提示一次信息。

 select empno, ename, &&columnname from emp  where sal>=3000 order by &&columnname;

在这里插入图片描述

show命令
show 命令用来显示当前sqlplus环境中的系统变量、错误信息、初始化参数、当前用户信息等。

命令说明
show all查看所有系统变量的值
show errors查看错误信息
show parameters显示初始化参数的值
show release查看数据库版本
show SGA查看SGA的大小(要有权限)
show sqlcode显示数据库操作之后的状态代码
show user显示当前连接的用户

save命令
在SQL*PLUS中可以执行一条或若干条sql命令,它们被存放在缓冲区中,且缓冲区中只能存放最近刚执行的sql或pl/sql ,(后进的覆盖之前的),如果要保存以往执行过的语句,要使用save。

save filename [create] [append] [replace]

filename : 存放语句的文档名
[create] [append] [replace] :create表示文档不存在,新建;append表示文档已经存在 ,追加;replace表示文档已经存在 , 覆盖。

get命令
上面说过save命令用来保存,那么get命令就是用来读取的,将保存后的文件读取到缓冲区中进行显示,get命令的语法格式:

get filename

edit命令
使用edit命令可以将缓冲区的内容复制到一个文件中 ,默认文件afiedt.buf ,当然也可以制定一个已经命了名存在的文件。

edit filename

在这里插入图片描述

@命令
用于执行存放在脚本文件中的命令:与start命令作用相同。

  @ filename

spool命令
将输出结果以及语句都保存在文本文件中。

开始:
spool filename  [create] or [append] or [replace]   out

[create] or [append] or [replace] 三选一
out 启动该功能。

结束:
spool foff

(3)sqlplus 环境的设置

我们可以打开SQL*PLUS界面通过属性的设置来改变其背景颜色、窗口大小、字体颜色、大小等等布局设置。
①linesize用于设置每一行数据可显示的数据量大小 ,默认80 。

show linesize
set linesize 160

②pagesize用于设置每一页的数据量大小 ,默认14。
③column 设置列的属性

column [columname | columnalias] [option]

[columname | columnalias] :分别为要设置格式的列名,列的别名
[option] :相关选项见下表

选项描述
Clear清除列的格式
Format显示格式的设置 :An列宽 L货币符号 .小数点位置等等
Heading text设置列标题
Justify[align]列标题对齐方式 center left right
Null text指定为空值显示的内容

④pause 用于查询结果行数多(避免查询结果太多在屏幕上快速显示),设置分屏显示,使用滚动键查看。
set pause on | off
⑤ttitle btitie 设置页眉和页脚

SQL> set pause on
SQL> set pause off
SQL> ttitle center "scott用户所拥有的表"
SQL> btitle center "---------scott用户所拥有的表-----"
SQL> select * from tab;scott用户所拥有的表
TNAME                                                        TABTYPE         CLUSTERID
------------------------------------------------------------ -------------- ----------
ADDRESS                                                      TABLE
BONUS                                                        TABLE
DEPT                                                         TABLE
EMP                                                          TABLE
FSB                                                          TABLE
SALGRADE                                                     TABLE
STU                                                          TABLE
STUDENT                                                      TABLE
STUDENT1                                                     TABLE
STUDENT2                                                     TABLE---------scott用户所拥有的表-----

http://www.ppmy.cn/news/472888.html

相关文章

sqlplus命令大全

官方联机文档 零、基本的SqlPlus命令 命令说明remark注释set headsep标题换行ttitle设置输出页的头标题btitle设置输出页的尾标题column对sql语句中的列进行格式化处理break on通知sqlplus在输出结果中插入空格compute sum通知sqlplus计算小计set linesize(line)设置sqlplus输…

ls参数大全

只列出目录下的目录:ls -F | grep "/" 不显示目录下的子项:ls -d -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。 -c 输出文件的 i 节点的…

函授本科学费一共需要多少钱一年

函授本科的收费通常是报名费加上学费,每年的报名费大约是100-200元,每年的学费大约是2000-3000元。其费用以本地高校所在区域的物价为基础,相对于普通高校而言,其费用相对较低。 函授本科一年学费多少钱 函授本科学费一年2000-300…

SQL Plus 常用命令

导航 前言SQL Plus常用命令COLUMN : 设置字段列宽HELP:查看帮助DESCRIBE:查看表的结构(字段)信息SPOOL:将屏幕内容保存到文件中SAVE:将缓冲区的内容保存到sql文件中START:执行sql文件…

SQL PLUS命令的使用大全

Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus语句。 我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且…

端口映射的作用?如何在路由器上做端口映射

一、端口映射作用 路由器中设置端口映射的主要作用,就是让Internet上的其他用户,可以访问你路由器下面电脑中的数据(软件、文件)。 当家里的电脑使用路由器上网后,在Internet下的其它电脑、手机等网络设备,将无法自接访问你电脑…

简聊关于Flutter的争议~

关于Flutter的争议 Flutter是谷歌的推出的跨平台UI框架,可以快速在iOS和Android上构建高质量的原生用户界面,可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。这是…

AFPM系列消防设备电源监控系统的功能和一样

安科瑞虞佳豪 现代建筑内部, 消防报警、防火、灭火系统种类繁多,并分布在建筑内的各个角落。当灾情发生的时候,消防设备能否处于正常的工作状态, 直接关系到人民生命财产安全是否得到及时保全。 消防设备电源监控系统对于确保建…