ASP.NET調用存儲過程前言,在使用.NET的過程當中,數據庫訪問是一個很重要的部分,特別是在B/S系統的構建過程當中,數據庫操做幾乎成爲了一個必不可少的操做。調用存儲過程實現數據庫操做使不少程序員使用的方法,並且大多數的程序員都是能使用存儲過程就使用存儲過程,不多直接使用SQL語句,因此存儲過程是頗有用並且很重要的。程序員
ASP.NET調用存儲過程簡介數據庫
簡單的說,存儲過程是由一些SQL語句和控制語句組成的被封裝起來的過程,它駐留在數據庫中,能夠被客戶應用程序調用,也能夠從另外一個過程或觸發器調用。它的參數能夠被傳遞和返回。與應用程序中的函數過程相似,存儲過程能夠經過名字來調用,並且它們一樣有輸入參數和輸出參數。網絡
根據返回值類型的不一樣,咱們能夠將存儲過程分爲三類:返回記錄集的存儲過程, 返回數值的存儲過程(也能夠稱爲標量存儲過程),以及行爲存儲過程。顧名思義,返回記錄集的存儲過程的執行結果是一個記錄集,典型的例子是從數據庫中檢索出符合某一個或幾個條件的記錄;返回數值的存儲過程執行完之後返回一個值,例如在數據庫中執行一個有返回值的函數或命令;最後,行爲存儲過程僅僅是用來實現數據庫的某個功能,而沒有返回值,例如在數據庫中的更新和刪除操做。分佈式
ASP.NET調用存儲過程的好處函數
相對於直接使用SQL語句,在應用程序中直接調用存儲過程有如下好處:性能
(1)減小網絡通訊量。調用一個行數很少的存儲過程與直接調用SQL語句的網絡通訊量可能不會有很大的差異,但是若是存儲過程包含上百行SQL語句,那麼其性能絕對比一條一條的調用SQL語句要高得多。優化
(2)執行速度更快。有兩個緣由:首先,在存儲過程建立的時候,數據庫已經對其進行了一次解析和優化。其次,存儲過程一旦執行,在內存中就會保留一份這個存儲過程,這樣下次再執行一樣的存儲過程時,能夠從內存中直接調用。編碼
(3)更強的適應性:因爲存儲過程對數據庫的訪問是經過存儲過程來進行的,所以數據庫開發人員能夠在不改動存儲過程接口的狀況下對數據庫進行任何改動,而這些改動不會對應用程序形成影響。接口
(4) 分佈式工做:應用程序和數據庫的編碼工做能夠分別獨立進行,而不會相互壓制。內存
由以上的分析能夠看到,在應用程序中使用存儲過程是頗有必要的。