- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle数据库开发经验浅谈
Oracle数据库开发经验浅谈出处:IT专家网 作者:樊斌 日期:2010-03-08
??
分享到: HYPERLINK javascript:void((function(s,d,e,r,l,p,t,z,c)%7bvar%20f=/share/share.php?appkey=1831937587,u=z||d.location,p=%5burl=,e(u),title=,e(t||d.title),source=,e(r),sourceUrl=,e(l),content=,c||gb2312,pic=,e(p||)%5d.join();function%20a()%7bif(!window.open(%5bf,p%5d.join(),mb,%5btoolbar=0,status=0,resizable=1,width=440,height=430,left=,(s.width-440)/2,,top=,(s.height-430)/2%5d.join()))u.href=%5bf,p%5d.join();%7d;if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();%7d)(screen,document,encodeURIComponent,,,,,,utf-8)); 新浪微博 ORACLE数据库作为大型数据库管理系统,近年来一直占有世界上高端数据库的最大份额,其强大而完善的数据库管理功能,以及ORACLE公司推陈出新的不断努力,一直成为IT业界瞩目的焦点。岭澳核电站的数据库平台采用了ORACLE7.3作为后端平台,前端选择了ORACLE公司的DEVELOPER 2000 及DESIGNER 2000作为开发工具,采用了目前流行的CLIENT/SERVER模式。本人在ORACLE系统的开发中,就ORACLE的整套开发工具提出一些自己的体会,供同行参考。
一. ORACLE SQL PLUS 使用技巧:
----①查找重复记录:
?????? SELECT DRAWING,DSNO FROM EM5_PIPE_PREFAB WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5
_PIPE_PREFAB D
WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND
EM5_PIPE_PREFAB.DSNO=D.DSNO);? ----执行上述SQL语句后就可以显示所有DRAWING和DSNO相同且重复的记录。
----删除重复记录:
?????? DELETE FROM EM5_PIPE_PREFAB WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5
_PIPE_PREFAB D
WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND
EM5_PIPE_PREFAB.DSNO=D.DSNO);? ----执行上述SQL语句后就可以刪除所有DRAWING和DSNO相同且重复的记录。
----② 快速编译所有视图
----当在把数据库倒入到新的服务器上后(数据库重建),需要将视图重新编译一遍,因为该表空间视图到其它表空间的表的连接会出现问题,可以利用PL/SQL的语言特性,快速编译。
?????? SQL SPOOL ON.SQL SQL SELECT ‘ALTER VIEW ‘||TNAME||’
COMPILE;’ FROM TAB;
SQL SPOOL OFF? 然后执行ON.SQL即可。 SQL @ON.SQL
当然,授权和创建同义词也可以快速进行,如:
?????? SQL SELECT ‘GRANT SELECT ON ’ ||TNAME||’ TO USERNAME;’ FROM TAB;
SQL SELECT ‘CREATE SYNONYM
‘||TNAME||’ FOR USERNAME.’||TNAME||’;’ FROM TAB;? ③ 用外联接提高表连接的查询速度
在作表连接(常用于视图)时,常使用以下方法来查询数据:
?????? SELECT PAY_NO, PROJECT_NAME FROM A
WHERE A.PAY_NO NOT IN (SELECT PAY_
NO FROM B WHERE VALUE =120000);? ----但是若表A有10000条记录,表B有10000条记录,则要用掉30分钟才能查
文档评论(0)