在開發過程中為什麼需要寫儲存過程

時間 2021-08-11 17:26:23

1樓:讀書人的日子

儲存過程說白了就是一堆 sql 的合併。中間加了點邏輯控制。

但是儲存過程處理比較複雜的業務時比較實用。

比如說,一個複雜的資料操作。如果你在前臺處理的話。可能會涉及到多次資料庫連線。但如果你用儲存過程的話。就只有一次。從響應時間上來說有優勢。

也就是說儲存過程可以給我們帶來執行效率提高的好處。

另外,程式容易出現 bug

資料量小的,或者和錢沒關係的專案不用儲存過程也可以正常運作。mysql 的儲存過程還有待實際測試。如果是正式專案,建議你用 sql

server 或 oracle

的儲存過程。資料與資料之間打交道的話,過程會比程式來的快的多。面試官問有沒有用儲存,實際上就是想知道前來面試的程式設計師到底做過資料量大的專案沒。如

果是培訓出來的,或者小專案小公司出來的,對儲存肯定接觸的少了。

所以,要想進大公司,沒有豐富儲存過程經驗,是不行的。

錯。儲存過程不僅僅適用於大型專案,對於中小型專案,使用儲存過程也是非常有必要的。其威力和優勢主要體現在:

1.儲存過程只在創造時進行編譯,以後每次執行儲存過程都不需再重新編譯,而一般 sql

語句每執行一次就編譯一次,所以使用儲存過程可提高資料庫執行速度。

2.當對資料庫進行復雜操作時(如對多個表進行

update,insert,query,delete

時),可將此複雜操作用儲存過程封裝起來與資料庫提供的事務處理結合一起使用。這些操作,如果用程式來完成,就變成了一條條的 sql

語句,可能要多次連線資料庫。而換成儲存,只需要連線一次資料庫就可以了。

3.儲存過程可以重複使用,可減少資料庫開發人員的工作量。

4.安全性高,可設定只有某此使用者才具有對指定儲存過程的使用權。 儲存過程的缺點

1:除錯麻煩,但是用 pl/sql developer 除錯很方便!彌補這個缺點。

2:移植問題,資料庫端**當然是與資料庫相關的。但是如果是做工程型專案,基本不存在移植問題。

3:重新編譯問題,因為後端**是執行前編譯的,如果帶有引用關係的物件發生改變時,受影響的儲存過程、包將需要重新編譯(不過也可以設定成執行時刻自動編譯)。

4:如果在一個程式系統中大量的使用儲存過程,到程式交付使用的時候隨著使用者需求的增加會導致資料結構的變化,接著就是系統的相關問題了,最後如果使用者想維護該系統可以說是很難很難、而且代價是空前的。維護起來更加麻煩!

sql中,什麼情況下要建立儲存過程?

2樓:匿名使用者

個人覺得儲存過程就跟函式的作用是一樣的,通過查詢,計算等完成查刪改的操作。

儲存過程的經常會用到的,往往在查詢資料庫的時候你需要進行很複雜的運算才回得到你想要的值,很少有隻用一句sql語句就能完成的,另外,儲存過程的執行效率要高。

3樓:匿名使用者

如果一個很複雜的業務邏輯,用一個sql完成不了了,就得用儲存過程來完成,儲存過程裡可以有多個sql,還可以有執行控制

它的用途你可以認為它是把多個sql組合到一起,通過一些過程控制,完成一些複雜的業務邏輯。

在資料庫中經常會用到,它也是開發的基本功

4樓:匿名使用者

select name from sysobjects where xtype = 'u' order by crdate desc

按照建立時間倒序排列的表名

第一個就是新建立的

5樓:匿名使用者

mysql教程4 mysql8運算子、函式、儲存過程及新增資料型別 17.之建立帶有in和out引數的儲存過程 學習猿地

請問 業界軟體測試在軟體整個開發過程中工作量比例是多少

你的這個問題都是些理論上的問題 第一個問題,這個不能得出一個明確的答覆,一般是三分之一的時間吧。這個還要看具體的是什麼軟體,有的軟體的測試工作量很大的,幾乎和開發的時間差不多。第二個問題,涉及到整個軟體的調研,需求編寫,框架設計,編碼等等,前期的設計和需求需要佔一半的時間吧,其實編碼實現起來很快的。...

軟體測試人員在軟體開發過程中的任務都有哪些

愛思考的小王 實你所講的測試人員,在軟體開發中,有一個專職崗位 軟體測試工程師。其主要任務和職責可以概括如下 1 依據需求文件及設計文件,編寫測試用例 2 完成產品的整合測試與系統測試 3 根據測試計劃,搭建測試環境 4 依據測試用例執行手工測試,反饋跟蹤產品bug及用例缺陷 5 測試工具 系統的研...

為什麼“新舊”陳皮在儲存的過程中會發黴

端木伊風 近年來,隨著生活質量的不斷提高,人們對養生的關注也越來越多。新會陳皮具有理氣和中 健脾開胃 燥溼化痰的功效,因此越來越受到人們的青睞。雖然陳皮有很多好處和優點,但它同時也應該注意一個問題,那就是如何儲藏它,如何防蟲防潮。新會陳皮最好遠離牆壁 地面和頂部存放,存放距離在10 20釐米以上。環...