当前位置: 代码迷 >> SQL >> sqlplus下令
  详细解决方案

sqlplus下令

热度:28   发布时间:2016-05-05 12:12:05.0
sqlplus命令
1、“ /“命令
    当运行 Sql*Plus 时, Oracle 会在在缓冲区中保留最后的执行命令,而针对这个缓冲区中的保存的命令,可以使用符号 “/”来快速访问,即可以使用 “/”命令来再次运行您最后执行的命令。
2、Sql*Plus 行编辑之 List 命令
    list命令用于查看Sql 缓冲区中的 Sql 语句,简写为l。缓冲区中只保存了您执行的最后一条 Sql 语句, 而list就是针对这一条语句来进行编辑的,而这一条 Sql 语句可能有 n 行,所以List 命令总共有三种形式:
    list --列出缓冲区中所有的行
    list n --列出缓冲区中的第 n 行
    list * --列出当前行,
    哪一行才是当前行呢,在使用 list 列出后,当前行前面有一个 * 标志,当前行会随着您的选择而变化。
3、Sql*Plus 行编辑之 Del 命令
    del命令用来删除缓冲区中储存的 Sql 语句的指定行,简写为d,也有三种形式:
    del --删除所有行(此处有误,不会删除所有行,待测)
    del n --删除指定行
    del * --删除当前行
4、Sql*Plus 行编辑之 Input 命令
    前面介绍了行编辑的查看和删除,那么这里介绍如何往缓冲区中的行里头添加新的行,这就是使用 Input 命令来实现的,请看下面的例子:
SQL>select * from;
select * from
            *
第1行出现错误:ORA-00903:表名无效
SQL>i test
SQL>l
  1 select * from
  2 test
SQL>/
              ID
------------------
              1
              2
5、Sql*Plus 行编辑之 Change 命令
    change 命令的作用就是将 Sql 缓冲区中的某行进行修改,简写为c。
SQL>select * from test1;
未选定行
SQL>c /test1/test
SQL>l
  1 select * from test
6、清空sql缓冲区
   clear buffer,与del不同,该命令会删除缓冲区中所有行
7、定义SQL编辑器
   define_editor定义编辑器(define_editor=notepad,定义记事本为sql编辑器)
   edit 文件名(不填写文件名将打开默认的文件afiedt.buf)
8、Save命令
    Save 命令是将 Sql 缓冲区中的内容来保存到指定路径的文件中(默认是.sql 的后缀名)。
    如果这个文件已经存在的话,将会写入失败,当然,如果您想覆盖掉这个文件的话,您可以在后面加 Replace 命令,比如 save d:\test replace
9、run命令
   run(缩写是 r) 命令的作用是列出当前缓冲区中的 Sql 语句,同时执行这条语句,其可以和“/”来对比,“/”这个命令只是执行缓冲区中的语句,而并不会显示出缓冲区中的 Sql 语。
   SQL>run
[email protected]
    @命令是用来运行指定路径的文件中定义的 Sql (当然也包括PL/SQL)语句的。
    这个命令既可以在会话层使用,也可以在命令层使用,何为会话层呢,就是当用户登录了 Oracle 时,就会自动建立一个会话,在这个层面上就是会话层;而何为命令层呢,自然就是没有用户登录的情况下,而只是使用 SqlPlus 命令连接到了 Oracle。
    SQL>@D:\test.sql
11、start命令
    [email protected],但start命令没有 [email protected],其只能运行在会话层,而不能工作在命令层。
    SQL>start D:\test.sql
12、get命令
    get 命令将指定路径下的.sql 文件中的内容读取出来,但是并不执行这些内容。
    SQL>get D:\test.sql
  相关解决方案