网站大量收购独家精品文档,联系QQ:2885784924

Oracle数据库一些不常见但很重要的使用技巧总结篇.docVIP

Oracle数据库一些不常见但很重要的使用技巧总结篇.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle数据库一些不常见但很重要的使用技巧总结篇.doc

Oracle数据库一些不常见但很重要的使用技巧总结篇 发布时间: 2011-7-22 10:43 作者: 鹤冲天(cnblogs) 来源: 51Testing软件测试网采编 字体: 小 中 大 |上一篇下一篇 |打印 |我要投稿 |推荐标签:数据库Oracle   Oracle数据库使用过程中,有一些技巧是使用过程中需要去了解和掌握的,掌握这些技巧我们在以后使用数据库的过程中就可以避免走很多弯路,提高查询效率。本文主要介绍一下七点技巧,希望能对各位有所帮助,接下来我们就一一介绍。   使用技巧:   1. procedure和function中的select后面不要跟变量,否则会极大的波及SQL效率。   2. TRUNCATE 在procedure中无法利用,可写成: EXECUTE IMMEDIATE truncate table smic_rtd_bullet_lot_tmp;   3. 当运行DML(数据垄断语言,增删改查)语句时,PL/SQL敞开一个内建游标并处理收获,游标是维护查询收获的内存中的一个区域,游标在运行DML语句时敞开,告终后关闭。隐式游标只利用SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT三个属性。SQL%FOUND, SQL%NOTFOUND是布尔值,SQL%ROWCOUNT是整数值。告终循环时能够此作为退出循环的推断规范。   4. 为了不重复解析雷同的SQL语句,在第顺次解析尔后,ORACLE将SQL语句储藏在内存中。这块位于系统大局区域SGA(system global area)的分享池(shared buffer pool)中的内存能够被所有的数据库用户分享。因而,当你厉行一个SQL语句(有时被称为一个游标)时,万一它和之前的厉行过的语句全面雷同,ORACLE就能很快获得曾经被解析的语句以及良好的厉行路径。分享的语句定然中意三个条件:   a. 字符级的比拟:目前被厉行的语句和分享池中的语句定然全面雷同。包括所有的空格和字母大小写。   b. 两个语句所指的对象定然全面雷同。例如两个用户对于统一个表,一个是table owner,一个是引用同义词,那么是无法SQL分享的。   c. 两个SQL语句中定然利用雷同的名字的绑定变量。凡是变量名字雷同,即便在运行时,赋于不同的绑定变量雷同的值也是能够的。   统一SQL在一个session多处利用,万一多次改变,经常因为空格和字母大小写不统一导致SQL未曾分享。利用 WITH a AS (SELECT * FROM ……) 将查询命名为a,尔后能够将a当做SQL利用,能够确保顺次解析多次利用,能够长进效率。   5. 凡是有可能,在过程中尽量多利用COMMIT,这么过程的功能获得长进,需求也会因为COMMIT所释放的资源而收缩:   COMMIT所释放的资源:   a. 回滚段上用于复如数据的消息。   b. 被过程语句获得的锁。   c. redo log buffer 中的空间。   d. ORACLE为管教上述3种资源中的内部花费。   在利用COMMIT时定然要当心到事务的全面性,切实中效率和事务全面性经常是鱼和熊掌不可得兼。   6. 穿越内部函数长进SQL效率。 SELECT H.EMPNO,E.ENAME,H.HIST_TYPE,T.TYPE_DESC,COUNT(*) FROM HISTORY_TYPE T,EMP E,EMP_HISTORY H WHERE H.EMPNO = E.EMPNO AND H.HIST_TYPE = T.HIST_TYPE GROUP BY H.EMPNO,E.ENAME,H.HIST_TYPE,T.TYPE_DESC; 穿越调用下面的函数能够长进效率。 FUNCTION LOOKUP_HIST_TYPE(TYP IN NUMBER) RETURN VARCHAR2 AS TDESC VARCHAR2(30); CURSOR C1 IS SELECT TYPE_DESC FROM HISTORY_TYPE WHERE HIST_TYPE = TYP; BEGIN OPEN C1; FETCH C1 INTO TDESC; CLOSE C1; RETURN (NVL(TDESC,尼康镜头’?’)); END; FUNCTION LOOKUP_EMP(EMP IN NUMBER) RETURN VARCHAR2 AS ENAME VARCHAR2(30); CURSOR C1 IS SELECT ENAME FROM EMP WHERE EMPEMPNO=EMP; BEGIN OPEN C1; FETCH C1 INTO EN

文档评论(0)

docinpfd + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档