oracle sqlplus命令详解

涉及到的知识要点
a、带有一个&的替换变量的用法
b、带有两个&的替换变量用法
c、define命令用法
d、accept命令用法
e、定制SQL*Plus环境
f、在glogin.sql文件中保存定制结果
g、sqlplus编辑命令

a、带有一个&的替换变量的用法
1)、使用带有一个&号的变量值来提示用户输入一个值。
eg、
SQL> SELECT     empno, ename, sal, deptno FROM  emp WHERE empno = &empno;
输入 empno 的值:  7369
原值    1: SELECT empno, ename, sal, deptno FROM  emp WHERE empno = &empno
新值    1: SELECT empno, ename, sal, deptno FROM  emp WHERE empno = 7369

EMPNO ENAME             SAL     DEPTNO
———- ———- ———- ———-
      7369 SMITH            8888         20

2)、替换变量中的字串和日期值
使用单引号标志替换变量中的日期和字串值。
eg、
SQL> SELECT ename, deptno, sal*12 FROM emp WHERE job=‘&job‘;
输入 job 的值:  ANALYST
原值    1: SELECT ename, deptno, sal*12 FROM emp WHERE job=‘&job‘
新值    1: SELECT ename, deptno, sal*12 FROM emp WHERE job=‘ANALYST‘

ENAME          DEPTNO     SAL*12
———- ———- ———-
SCOTT              20     106656
FORD               20      36000

3)、运行时指定列名、表达式、文本
SELECT empno, ename, job, &column_name
FROM emp
WHERE &condition
ORDER BY &order_column;
输入 column_name 的值:  sal
原值    1: SELECT empno, ename, job, &column_name
新值    1: SELECT empno, ename, job, sal
输入 condition 的值:  sal>=3000
原值    3: WHERE &condition
新值    3: WHERE sal>=3000
输入 order_column 的值:  ename
原值    4: ORDER BY &order_column
新值    4: ORDER BY ename

EMPNO ENAME      JOB              SAL
———- ———- ——— ———-
      7902 FORD       ANALYST         3000
      7839 KING       PRESIDENT       5000
      7788 SCOTT      ANALYST         8888
      7369 SMITH      CLERK           8888

b、带有两个&的替换变量用法
使用带有两个&的变量可以使得该变量可以重复使用,而不必在每次使用时提醒用户输入。
SQL> SELECT empno, ename, job, &&column_name FROM emp ORDER BY &column_name;
输入 column_name 的值:  deptno
原值    1: SELECT empno, ename, job, &&column_name FROM emp ORDER BY &column_name
新值    1: SELECT empno, ename, job, deptno FROM emp ORDER BY deptno

EMPNO ENAME      JOB           DEPTNO
———- ———- ——— ———-
      7782 CLARK      MANAGER           10
      7839 KING       PRESIDENT         10
      7934 MILLER     CLERK             10

c、define命令用法
创建CHAR类型的用户变量,当定义一个包含空格的变量时,要用单引号将该变量括起来。
eg、
SQL> define deptname = sales
SQL> define deptname; –查看该变量
DEFINE DEPTNAME = "sales" (CHAR)
SQL> SELECT * FROM dept WHERE dname=UPPER(‘&deptname‘);
原值    1: SELECT * FROM dept WHERE dname=UPPER(‘&deptname‘)
新值    1: SELECT * FROM dept WHERE dname=UPPER(‘sales‘)

DEPTNO DNAME          LOC
———- ————– ————-
        30 SALES          CHICAGO

说明:一个变量将保持在被定义的状态,直到使用undefine命令将它清除或离开sql*plus。

d、accept命令用法
接收用户输入时,创建可定制的用户提示。
eg、
–提示你输入一个数值给dept,dept是个变量,可用define命令查看该变量
SQL> accept dept prompt ‘Provide the department name: ‘
Provide the department name: Sales
SQL> define dept; –查看该变量
DEFINE DEPT = "Sales" (CHAR)
SQL> SELECT * FROM dept WHERE dname = UPPER(‘&dept‘);
原值    1: SELECT * FROM dept WHERE dname = UPPER(‘&dept‘)
新值    1: SELECT * FROM dept WHERE dname = UPPER(‘Sales‘)

DEPTNO DNAME          LOC
———- ————– ————-
        30 SALES          CHICAGO

e、定制SQL*Plus环境
使用SET命令来控制当前的会话。
语法:SET system_variable value
eg、SQL> set arraysize 20;
可以使用SHOW命令来查看set设置。
eg、SQL> show arraysize
arraysize 20
说明: set命令用法具体请看” oracle set命令详解.txt”

f、在glogin.sql文件中保存定制结果
glogin.sql文件包含在登录时需要执行的标准SET命令及其他命令,我们可以更改glogin.sql以包含其他SET命令。
如:设置sqlplus环境的linesize为300,并让这个变量永久生效在$ORACLE_HOME/sqlplus/admin/glogin.sql(D:\dev\oracle\product\10.2.0\db_1\sqlplus\admin)文件中添加如下内容:set linesize 300
a
g、sqlplus编辑命令
1)、执行def命令查看编辑器的设置:
SQL> def

2)、总结下:
l–列sql
n–切换活动行(n代表行数字)
a–活动行后增加(append)
i–活动行后插入新行增加(input)
c–替换(change)
eg、c /emp_name/emp_age/
del n–删除行n
/–执行sql
eg、
SQL> select deptno, dname from dept;

DEPTNO DNAME
———- ————–
        10 ACCOUNTING
        20 RESEARCH
        30 SALES
        40 OPERATIONS

SQL> i  where deptno>20
SQL> l
  1  select deptno, dname from dept
  2* where deptno>20
SQL> /

DEPTNO DNAME
———- ————–
        30 SALES
        40 OPERATIONS

SQL> del 2
SQL> l
  1* select deptno, dname from dept
SQL> a  where deptno>30
  1* select deptno, dname from dept where deptno>30
SQL> l
  1* select deptno, dname from dept where deptno>30
SQL> /

DEPTNO DNAME
———- ————–
        40 OPERATIONS

oracle sqlplus命令详解,布布扣,bubuko.com

时间: 2024-10-11 18:17:48

oracle sqlplus命令详解的相关文章

Oracle Analyze 命令 详解

官网的链接如下: http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_4005.htm#SQLRF01105 使用DBMS_STATS 收集统计信息参考: Oracle Statistic 统计信息 小结 http://blog.csdn.net/tianlesoftware/article/details/4668723 Oracle 判断 并 手动收集 统计信息 脚本 http://blog.csdn.net/ti

Oracle rman 命令详解

一.list常用命令总结备忘 list命令列出控制文件.RMAN恢复目录中备份信息, 是我们对所有可见的数据库备份文件的一个最直观的了解的方法 list incarnation;    list backup summary;    list backup of database summary;    list backup of tablespace summary;    list backup of datafile n,n summary;    list archivelog all

Oracle imp exp命令详解

如何在oracle中导入dmp数据库文件? oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中. 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用. 执行环境:可以在sqlplus.exe或者dos(命令行)中执行, dos中可以执行时由于在oracle 8i 中 安装目录\ora81\bin被设置为全局路径, 该目录下有exp.ex

ORACLE EXPDP IMPDP数据导入导出命令详解及同EXP IMP命令详细对比

ORACLE EXPDP IMPDP数据导入导出命令详解及同EXP IMP 命令详细对比 一.EXPDP IMPDP EXP IMP 可以实现 1.可以实现逻辑备份和逻辑恢复 2.可以在数据库用户之间移动对象 3.可以在数据库之间移动对象 4.可以实现表空间转移 二.EXPDP的命令详解 C:\Users\Administrator>20:42:32.90>expdp help=y Export: Release 11.2.0.1.0 - Production on 星期六 10月 10 09

oracle中imp命令详解 .

oracle中imp命令详解 Oracle的导入实用程序(Import utility)允许从数据库提取数据,并且将数据写入操作系统文件.imp使用的基本格式:imp[username[/password[@service]]],以下例举imp常用用法. 1. 获取帮助 imp help=y 2. 导入一个完整数据库 imp system/manager file=bible_db log=dible_db full=y ignore=y 3. 导入一个或一组指定用户所属的全部表.索引和其他对象

oracle数据库exp/imp命令详解

转自http://wenku.baidu.com/link?url=uD_egkkh7JtUYJaRV8YM6K8CLBT6gPJS4UlSy5WKhz46D9bnychTPdgJGd7y6UxYtBNhq3IXSGeAP0aABTUlnQcvwJkGm2lyzpcbX544zRG oracle数据库exp/imp命令详解 exp/imp命令详解    exp/imp两个命令可以说是oracle中最常用的命令了.    ORACLE数据库有两类备份方法.第一类为物理备份,该方法实现数据库的完整恢

Oracle 11g数据库详解(2015-1-18更新)

Oracle 11g数据库详解 整理者:高压锅 QQ:280604597 Email:[email protected] 大家有什么不明白的地方,或者想要详细了解的地方可以联系我,我会认真回复的 1   简介 数据库操作主要有以下几步: 1.  启动.停止数据库 2.  连接.断开数据库 3.  创建.修改.删除数据库用户 4.  表空间 5.  新建.修改.删除表 6.  查询.插入.修改.删除表数据 7.  新建.修改.删除视图 8.  新建.修改.删除存储过程 9.  新建.修改.删除触发

Oracle 11g数据库详解(2015-02-28更新)

Oracle 11g数据库详解 整理者:高压锅 QQ:280604597 Email:[email protected] 大家有什么不明白的地方,或者想要详细了解的地方可以联系我,我会认真回复的 1   简介 数据库操作主要有以下几步: 1.  启动.停止数据库 2.  连接.断开数据库 3.  创建.修改.删除数据库用户 4.  表空间 5.  新建.修改.删除表 6.  查询.插入.修改.删除表数据 7.  新建.修改.删除视图 8.  新建.修改.删除存储过程 9.  新建.修改.删除触发

ORACLE数据库备份与恢复详解

ORACLE数据库备份与恢复详解 学习过程中的总结,有兴趣不妨看看,如果有不对的地方,高手不要留情!! Oracle的备份与恢复有三种标准的模式,大致分为两 大类,备份恢复(物理上的)以及导入导出(逻辑上的),而备份恢复又可以根据数据库的工作模式分为非归档模式(Nonarchivelog-style) 和归档模式(Archivelog-style),通常,我们把非归档模式称为冷备份,而相应的把归档模式称为热备份,他们的关系如下所示 三种方式各有优点,我们做个比较(这个是用Fireworks画的,