SQL * PLUS 概述与常用命令

您所在的位置:网站首页 什么是sql*plus SQL * PLUS 概述与常用命令

SQL * PLUS 概述与常用命令

2024-02-03 15:05| 来源: 网络整理| 查看: 265

简介

    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> define DEFINE _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 Production With the Partitioning, OLAP, Data Mining and Real Application Testing options" (CHAR) DEFINE _O_RELEASE = "1102000100" (CHAR) SQL> define test =1122 SQL> define test DEFINE TEST = "1122" (CHAR) SQL> undefine test

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

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

vairbale 指定变量名,如果不存在则新建datatype 制定变脸的数据类型 char munber date 默认为charformat 指定变量的格式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 >4900 ENAME 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 rightNull 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用户所拥有的表-----


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3