第二章 oracle高级应用基础.docVIP

  • 1
  • 0
  • 约1.21万字
  • 约 12页
  • 2017-07-08 发布于湖北
  • 举报
查看版本号及锁表处理 1.1查看版本号 SQL select * from v$version; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi PL/SQL Release 10.2.0.4.0 - Production CORE 10.2.0.4.0 Production TNS for HPUX: Version 10.2.0.4.0 – Production NLSRTL Version 10.2.0.4.0 – Production 1.2锁表处理 以DBA角色, 查看当前数据库里锁的情况可 以用如下SQL语句: 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#; //sid,serial#是上面查询出来的 系统级杀进程方法释放锁: select spid from v$process where addr = (select paddr from v$session where sid=sid);$ kill -9 spid //spid是上面查询出来的 (3)注意点:如果出现了锁的问题, 某个DML操作可能等待很久没有反应。 当你采用的是直接连接数据库的方式,也不要用OS系统命令 $kill process_num 或者 $kill -9 process_num来终止用户连接,因为一个用户进程可能产生一个以上的锁,杀OS进程并不能彻底清除锁的问题。 –when-then-end和Decode select t.id, t.name, t.sal_int, case when t.sal_int 3000 then less when t.sal_int is null then null else many end as ss from test t ID NAME SAL_INT SS 1 kevin 3233 many 10 tom 4567 many 11 sum 2678 less 12 lucy 2908 less 13 peter 4523 many 14 kite 3145 many 15 kitty 2356 less 16 terry 3245 many 17 jerry 3245 many 18 Jessica 1345 less 19 paul 3216 many 2 kevin 4352 many 20 joe 2789 less 3 mike 4344 many 4 jack 7544 many 5 lily 1234 less 6 jim 3212 many 7 tony 2000 less 8 tom   null 9 tom 3423 many Decode函数 decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值) 该函数的含义如下: IF 条件=值1 THEN   RETURN(翻译值1) ELSIF 条件=值2 THEN    RETURN(翻译值2)    ...... ELSIF 条件=值n THEN   RETURN(翻译值n) ELSE     RETURN(缺省值) END IF 上例也可以写为decode方式,得到同样的结果,sign()函数判断括号内的值,是正数返回1,负数返回-1:0返回0 select t.id, t.name, t.sal_int, decode(sign(sal_int - 3000), -1, less, 1, many,

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档