eygle.com   eygle.com
eygle.com  
 

« China-Pub和Dearbook 谁的销售更厉害? | Blog首页 | DBA警世录:备份重于一切 »

Tom的法则:当你开发数据库软件时...

作者:eygle |【转载时请务必以超链接形式标明文章和作者信息及本声明
链接:

今天在Tom的Blog上看到一则日记Slow by Slow,其中提到了在开发基于Oracle的应用软件时,他推荐遵循的原则。
很有意思,也非常值得借鉴,Tom在文中说到:

My mantra, that I'll be sticking with thank you very much, is:

1.You should do it in a single SQL statement if at all possible.
2.If you cannot do it in a single SQL Statement, then do it in PL/SQL.
3.If you cannot do it in PL/SQL, try a Java Stored Procedure.
4.If you cannot do it in Java, do it in a C external procedure.
5.If you cannot do it in a C external routine, you might want to seriously think about why it is you need to do it…

think in sets...

同样在AskTom的网站回复中,Tom也提到了这个观点。

让我尝试简单翻译过来给大家参考:

1.我们应该尽量使用单个SQL语句来实现应用需求
2.如果单个SQL无法实现,考虑使用PL/SQL来实现
3.如果PL/SQL无法实现,接下来可以尝试使用Java存储过程来实现
4.如果Java过程也不行,尝试使用C的外部存储过程来解决
5.如果以上都不能实现,那么你应该认真考虑你为什么要实现这个需求...

这些规则也许还可以有不同的理解、阐释和分析,但是作为一个DBA和开发人员,脑海中应该具有这样一条主线,当然在实际中,还要加入具体的分析和自己的延伸....

-The End-

By eygle on 2006-10-19 14:19 | Comments (8) | Posted to FAQ | Edit |Pageviews:

相关文章 随机文章
  • 如何对时间进行简单加减运算
  • 并行查询并行度Degree与instances 设置
  • 关于PARALLEL_MAX_SERVERS参数的设置
  • 使用REF CURSOR处理Oracle的结果集
  • Oracle Peeking绑定变量的控制
  • Nologging到底何时才能生效?
    春天的花开以及冬日的冰
    Oracle HowTo:如何Shrink Undo表空间,释放过度占用的空间
    《Oracle数据库性能优化》一书热销
    我的妻子以及儿子
    网上相关主题:
    Google

    留言 (8)

    以上还是不能实现的话找Eygle.

    Posted by: Julia at October 19, 2006 3:29 PM

    开发人员最应该熟悉所对应的数据库,这样可以省不少事情,

    Posted by: fwpmsy at October 19, 2006 6:51 PM

    这个最早是出现在TOM的《Expert one-on-on Oracle》中的第一章节中

    Posted by: blue_prince at October 23, 2006 6:53 PM

    还真是,以前都没有注意到!

    Posted by: eygle at October 23, 2006 7:47 PM

    这个原则早在Expert one-on-one Oracle 已经详尽阐述了!

    Posted by: 每一天都需要努力 at October 30, 2006 3:13 PM

    statement翻译成语句更合适

    Posted by: l1t at November 28, 2006 8:36 AM

    是的,修改之,tks

    Posted by: eygle at November 28, 2006 8:43 AM

    记得在编程艺术中也见到了这段文字。

    Posted by: hcl at October 2, 2007 4:13 PM

    发表留言:



    Remember Me?
    (输入验证码后方可评论,谢谢支持)



    CopyRight © 2004 eygle.com, All rights reserved.