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】网络清算供各人参考研究 假如以上内容对您有辅佐,接待保藏、点赞、保举、分享。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |


