时间: 2021-08-13 作者:daque
sql*plus体例情况变量有哪些?怎样窜改? 软硬件情况: 1、windows nt4.0+oracle 8.0.4 2、oracle安置路途为:c:\orant 实行本领: 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; sql*plus常用吩咐列表 [ 天国之水 2002年9月18日,观赏人头36人 ] 软硬件情况: 1、windows 98 第二版 2、oracle数据库本子为:personal oracle7 release 7.3.4.0.0 3、oracle安置路途为:c:\orawin95 吩咐列表: 假如暂时实行吩咐为: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 清空暂时屏幕表露