第三章 oracle高级应用基础.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
查看版本号及锁表处理 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)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档