加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

SQL*Plus常用指令

发布时间:2021-01-13 01:29:50 所属栏目:编程 来源:网络整理
导读:本日PHP站长网 52php.cn把网络自互联网的代码分享给各人,仅供参考。 1.怎样链接数据库由操纵体系验证方法:SQLconn / as sysdba由数据库验证方法SQLCONN username/password @databaseIdentified AS sysdbadatabaseIdenti

以下代码由PHP站长网 52php.cn网络自互联网

此刻PHP站长网小编把它分享给各人,仅供参考

1.怎样链接数据库
由操纵体系验证方法:
SQL>conn / as sysdba
由数据库验证方法
SQL>CONN username/password @databaseIdentified AS sysdba
databaseIdentified是链接标识符,和数据库无关,可以自由定名。
AS 后头是脚色
2. 怎样执行一个SQL剧本文件 
SQL>start file_name 
SQL>@ file_name 
我们可以将多条sql语句生涯在一个文本文件中,这样当要执行这个文件中的全部的sql语句时,用上面的任一呼吁即可,这相同于dos中的批处理赏罚。 

3. 从头运行上一次运行的sql语句 
SQL> run

4. 将表现的内容输出到指定文件 
SQL> SPOOL file_name 
在屏幕上的全部内容都包括在该文件中,包罗你输入的sql语句。 

5. 封锁spool输出 
SQL> SPOOL OFF 
只有封锁spool输出,才会在输出文件中看到输出的内容。 

6.表现一个表的布局 
SQL> desc table_name 

7. COL呼吁: 
我之用名目化的要领
COL columnname format a20

改变缺省的列问题 
COLUMN column_name HEADING column_heading 
For example: 
Sql>select * from dept; 
DEPTNO DNAME LOC 
---------- ---------------------------- --------- 
10 ACCOUNTING NEW YORK 
sql>col LOC heading location 
sql>select * from dept; 
DEPTNO DNAME location 
--------- ---------------------------- ----------- 
10 ACCOUNTING NEW YORK 
8. Set 呼吁: 
我一样平常之用
set linesize 1000
set wrap off 
当SQL语句的长度大于LINESIZE时,是否在表现时截取SQL语句。 
SQL> SET WRA[P] {ON|OFF} 
当输出的行的长度大于配置的行的长度时(用set linesize n呼吁配置),当set wrap on时,输出行的多于的字符会另起一行表现,不然,会将输出行的多于字符切除,不予表现。 
9.修改sql buffer中的当前行中,第一个呈现的字符串 
C[HANGE] /old_value/new_value 
SQL> l 
1* select * from dept 
SQL> c/dept/emp 
1* select * from emp 
10.表现sql buffer中的sql语句,list n表现sql buffer中的第n行,并使第n行成为当前行 
L[IST] [n] 

10.在sql buffer的当前行下面加一行或多行 
I[NPUT] 

11.将指定的文本加到sql buffer的当前行后头 
A[PPEND] 
SQL> select deptno,2 dname 
3 from dept; 
DEPTNO DNAME 
---------- -------------- 
10 ACCOUNTING 
20 RESEARCH 
30 SALES 
40 OPERATIONS 

SQL> L 2 
2* dname 
SQL> a,loc 
2* dname,loc 
SQL> L 
1 select deptno,2 dname,loc 
3* from dept 
SQL> / 

DEPTNO DNAME LOC 
---------- -------------- ------------- 
10 ACCOUNTING NEW YORK 
20 RESEARCH DALLAS 
30 SALES CHICAGO 
40 OPERATIONS BOSTON 
12.再次执行适才已经执行的sql语句 
RUN 
or 
/ 
13.执行一个存储进程 
EXECUTE procedure_name 
14.表现sql*plus呼吁的辅佐 
HELP 
15.表现sql*plus体系变量的值或sql*plus情形变量的值 
Syntax 
SHO[W] option 
1) . 表现当前情形变量的值: 
Show all 
2) . 表现当前在建设函数、存储进程、触发器、包等工具的错误信息 
Show error 
当建设一个函数、存储进程等堕落时,变可以用该呼吁查察在谁人处所堕落及响应的堕落信息,举办修改后再次举办编译。 
3) . 表现初始化参数的值: 
show PARAMETERS [parameter_name] 
4) . 表现数据库的版本: 
show REL[EASE] 
5) . 表现SGA的巨细 
show SGA 
6) 表现当前的用户名 
show user 


******************************************
ORA-00054: resource busy and acquire with NOWAIT specified
症状:
       locked_mode为2,3,4不影响DML(insert,delete,update,select)操纵,  但DDL(alter,drop等)操纵会提醒ora-00054错误。    
  有主外键束缚时 update / delete ... ; 也许会发生4,5锁。   
  DDL语句时是6的锁。  
处理赏罚要领:  
  以DBA脚色,查察当前数据库里锁的环境可以用如下SQL语句: 
  select object_id,session_id,locked_mode from v$locked_object; 
或select t2.username,t2.sid,t2.serial#,t2.logon_time 
  from v$locked_object t1,v$session t2 
  where t1.session_id=t2.sid order by t2.logon_time; 
  假若有恒久呈现的一列,也许是没有开释的锁。  
  我们可以用下面SQL语句杀掉恒久没有开释非正常的锁: 
  alter system kill session 'sid,serial#'; 
最后规复正常. 

以上内容由PHP站长网【52php.cn】网络清算供各人参考研究

假如以上内容对您有辅佐,接待保藏、点赞、保举、分享。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读