本系列文章導航
[Oracle]高效的PL/SQL程序設計(一)--偽列ROWNUM使用技巧
[Oracle]高效的PL/SQL程序設計(二)--標量子查詢
[Oracle]高效的PL/SQL程序設計(三)--Package的優點
[Oracle]高效的PL/SQL程序設計(四)--批量處理
[Oracle]高效的PL/SQL程序設計(五)--調用存儲過程返回結果集
[Oracle]高效的PL/SQL程序設計(六)--%ROWTYPE的使用
使用Package的優點在于提供了必需的程序設計結構, 促進了模塊化編程設計, 最重要的是Package斷開了依賴鏈, 使得對某個數據庫模式的改動不會導致整個模式的無效,從而避免了昂貴的重編譯!
例如: 存在table t , procedure p1 p2, view v, function f, 它們之間引用關系如下:






當alter table t add y number時, 依賴于t的所有對象(包括傳遞依賴的對象, 即p1依賴于t, p2依賴于p1)就全部無效, 需要重新編譯(如果代碼很復雜, 就會有較大的消耗)





如果使用程序包之后table t , package pkg1,pkg2, view v, 可以發現PACKAGE BODY是依賴于PACKAGE, 而PKG2依賴于PKG1的PACKAGE, 而不是PACKAGE BODY





當alter table t add y number時,會發現PK1的PACKAGE BODY會無效, 但是PKG2的PACKAGE BODY是有效的



博文來源:
http://blog.csdn.net/huanghui22/archive/2007/05/22/1620606.aspx
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
