關於數據庫的存儲過程


https://jingyan.baidu.com/article/b7001fe1b162d80e7282ddcc.html

 3.1.1  什么是數據庫的存儲過程                  

             SQL的調用可以分為函數和存儲過程,個人理解,其實函數和存儲過程是相似的,至少在引用的時候跟函數很是一樣。或者干脆把存儲過程理解為另一種函數,另一種經過優化的函數。它的優點在於,存儲過程在被編譯后會被直接保存在數據庫中,成為數據庫的一部分,以后就可以反復調用,運行速度快,效率高。。。這些是函數做不到的。

             系統存儲過程是SQL Server系統創建的存儲過程,它的目的在於能夠方便的從系統表中查詢信息,或者完成與更新數據庫表相關的管理任務或其他的系統管理任務。系統存儲過程可以在任意一個數據庫中執行。系統存儲過程創建並存放於系統數據庫master中,並且名稱以sp_或者xp_開頭。一些系統過程只能由系統管理員使用,而有些系統過程通過授權可以被其他用戶使用。

       3.2.2   數據庫存儲過程的意義       

             創建了是拿來用的,至於為什么要用存儲過程,要先了解存儲過程存在的意義:

                    存儲過程由SQL語句和流程控制語句組成。它的功能包括:接受參數;調用另一過程;返回一個狀態值給調用過程或批處理,指示調用成功或失敗;返回若干個參數值給調用過程或批處理,為調用者提供動態結果;在遠程SQL Server中運行等。

                  1)·存儲過程是預編譯過的,所以存儲過程執行速度很快.

                  2)·存儲過程和待處理的數據都放在同一台運行SQL Server的計算機上,使用存儲過程查詢當地的數據,效率自然很高

                  3)·存儲過程一般多由Client端通過存儲過程的名字進行調用,減少了網絡傳輸量,加塊系統速度.

                  4)·存儲過程還有着如同C語言子函數那樣的被調用和返回值的方便特性。

        3.3.3   Navicate 如何導出數據庫的存儲過程?

               Navicate 是一款數據庫管理工具,有針對大眾數據庫的,也有專門針對某一種數據庫的。比如Navicate for mysql等。如何將數據庫中的某個函數,或者某個存儲過程,某個視圖,或者某幾個事件導出來了??

              步驟:

                     (1)  打開Navicate for mysql;

                                           

                     (2)  連接到數據庫;如:resourceDB

                                        

                      (3) 點擊菜單欄工具

                                       

 

                       (4) 選擇:數據傳輸;

                                       

 

                         (5) 選中文件單選按鈕,點擊瀏覽按鈕;                             

                                  1.選擇文件保存位置;2.命名文件名;3.點擊保存;比如:存放在桌面,文件名為:outPut_proc

                                      

                         (6)  然后在左側數據庫對象欄,選中要導出的存儲過程,並點擊開始按鈕;比如:導出如下存儲過程;

                                        

                          (7) 如過出現提示傳輸的對話框,點擊確定即可;

                                      

                            (8)  存儲過程導出成功!!

                                       

                            (9) 函數的導出,視圖的導出,以及事件的導出同理!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM