作者foxzgerald (O⊥M)
看板Database
標題Re: 請問store procedure
時間Wed Jan 10 21:47:02 2007
※ 引述《overcome1 (努力)》之銘言:
: 請問store procedure的好處是什麼,
: 有明顯的例子嗎?
: 為什麼不能我需要用到資料的時候再下SQL就好了呢
: 因為一直以來不是很懂其作用
: 謝謝
stored procedure
x x x
假設一種情況:從網頁新增一筆資料時,需要同時更新三張 TABLE。
在不使用 Stored Procedure 的情況下, PHP至少要執行至少三次
Query(如果資料新增的邏輯很複雜,那麼就需要更多的 Query)
然而如果將新增至表單的邏輯移進SP時,那麼 PHP只須呼叫該SP,
便可完成複雜的資料新增。此時, PHP只 Query一次;其餘的動作
則在資料庫內部完成。
上述兩種情況,可以發現使用SP可以節省不少程式與資料庫間相互
溝通的成本。再者SP是儲存於資料庫內、經過編譯的程序,因此效
率普遍比直接用 SQL Query要好。
而且設計得當,可以簡化程式設計的複雜度:把資料庫可處理的複
雜邏輯藏於SP內,讓它變成 Interface,可以提升維護的彈性。
.... 據我所知,至少有以上的優點 :P
--
「640K ought to be enough for anybody.!」
- Bill Gates -
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.199.121
1F:→ grence:SP有經過編譯(?),執行效率也比直接下SQL語法好 01/11 14:33