學習 SQL Server 中 Store Procedure 的使用與應用

更新於 2024/02/17閱讀時間約 2 分鐘

前言

什麼是 Store Procedure? 為什麼我們要學 Store Procedure? 為什麼大部分時候其實你並不會需要用到它?

在介紹技術前,讓我們想想一個情境:今天小明操作的是一個物料系統,工廠的料是很大量的,可能是幾百萬筆,畢竟市場千變萬化,料如果不千變萬化怎麼能夠應付這些需求呢?

如果小明在做資料處理時,是將這幾百萬筆料拋回後端做,小明的後端可能會炸裂~ 畢竟,資料庫與 API 程式本來就是在不同機器,如果這時又需要透過網路溝通,網路時間肯定會宇宙之久,就算沒有炸裂,我猜小明的用戶也已經 call 來客訴~ 悲劇

為了解決這樣的效能問題,可以寫一組 SQL 腳本,將相關的工作集中在一起,我們可以在一次執行多個指令,並在其中實現流程控制。

那為什麼實務上會偏好在應用端建立連線寫 SQL?盡量不要寫 SP,可以寫在應用程式的排程裡。因為 SP 並不好維護,很容易改到大家一起壞掉,通常壞掉事情又很大條。SP 要測試也會比較麻煩。

另外,為了維護,請一定要將你的 SP 納入 Git 版控,如果出事了,至少我們還退的回上一版。

總之,在某些情境下,SP 真的是一個很棒的工具呢~

學習心得

參考教材:Udemy SQL Server Programming and Stored Procedures Fundamentals

這是一門很簡短的課程,不會讓你感到太長,快速的將你會用到的 SP 知識點過了一遍。如果你所追求的是有更多的應用場景在這門課中,他完全不適合你。

但,因為工作中會接觸 SP,我反而覺得有一個能夠快速帶你學習 SP 的知識點,並給予一些簡單的實作小例子,對我而言很有幫助。很快地腦中有了基礎。

連結為我跟課的學習筆記,因為都是偏向語法學習,這邊就沒有想要再額外詳細說明,可能之後過了兩個月後,對 SP 這些的應用有更多想法會再額外補充,語法之外的東東。












avatar-img
1會員
2內容數
很多技術學習心得筆記與日常
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
本文將介紹 SQL 中的連接(JOIN),連接(JOIN)是用於結合來自兩個或多個資料表的相關數據,建議讀過我之前發佈的幾篇"SQL學習筆記"之後再來看這篇。
Thumbnail
本文將介紹 SQL 中的 ON DELETE, ON DELETE 是用於管理資料庫中的外鍵約束和相關資料的刪除行為。接下來將教你如何使用 ON DELETE 來保持資料的一致性和完整性。
Thumbnail
本文重點介紹 SQL 中的聯集(UNION),聯集(UNION)用於合併來自不同查詢的結果集,接下來將透過範例程式碼來讓你了解聯集(UNION)的用法和特性。
Thumbnail
本文將介紹 SQL 中的萬用字元(Wildcard),萬用字元在 SQL 查詢中扮演著關鍵角色,特別是當我們需要對數據進行模糊查找時,接下來會透過範例程式碼來解釋如何使用這些萬用字元。
Thumbnail
本文將介紹 SQL 中的聚合函數(Aggregate Functions),聚合函數(Aggregate Functions)對於進行數據分析來說非常重要,接下來將透過範例程式碼來說明聚合函數(Aggregate Functions)的應用。
Thumbnail
本文將介紹幾種常見的 SQL 約束,包括主鍵(PRIMARY KEY)、外鍵(FOREIGN KEY)、唯一(UNIQUE)、非空(NOT NULL)和檢查(CHECK)約束,接下來將透過範例程式碼來帶你了解這些約束的使用方式。
Thumbnail
本文將介紹如何使用 SQL 的 CREATE TABLE 指令來創建資料表,接下來將透過範例程式碼,帶你從基本語法開始了解 CREATE TABLE。
Thumbnail
本文將介紹 SQL 中的SELECT語句,這是從資料庫中查詢數據的基本命令,理解並掌握SELECT語句是學習SQL的重要一步。SELECT 語句是什麼?SELECT語句是 SQL 中用於從資料庫表格中查詢特定數據的基本命令,它可以讓您選擇特定的欄位,從而精確地獲取所需的數據。
Thumbnail
SQL 是一種專門用來和資料庫進行溝通的程式語言,它讓我們能夠創建資料表、新增、查詢、修改和刪除資料庫中的資料,本文將介紹基本的創建、新增、查詢、修改和刪除的 SQL 語法。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
本文將介紹 SQL 中的連接(JOIN),連接(JOIN)是用於結合來自兩個或多個資料表的相關數據,建議讀過我之前發佈的幾篇"SQL學習筆記"之後再來看這篇。
Thumbnail
本文將介紹 SQL 中的 ON DELETE, ON DELETE 是用於管理資料庫中的外鍵約束和相關資料的刪除行為。接下來將教你如何使用 ON DELETE 來保持資料的一致性和完整性。
Thumbnail
本文重點介紹 SQL 中的聯集(UNION),聯集(UNION)用於合併來自不同查詢的結果集,接下來將透過範例程式碼來讓你了解聯集(UNION)的用法和特性。
Thumbnail
本文將介紹 SQL 中的萬用字元(Wildcard),萬用字元在 SQL 查詢中扮演著關鍵角色,特別是當我們需要對數據進行模糊查找時,接下來會透過範例程式碼來解釋如何使用這些萬用字元。
Thumbnail
本文將介紹 SQL 中的聚合函數(Aggregate Functions),聚合函數(Aggregate Functions)對於進行數據分析來說非常重要,接下來將透過範例程式碼來說明聚合函數(Aggregate Functions)的應用。
Thumbnail
本文將介紹幾種常見的 SQL 約束,包括主鍵(PRIMARY KEY)、外鍵(FOREIGN KEY)、唯一(UNIQUE)、非空(NOT NULL)和檢查(CHECK)約束,接下來將透過範例程式碼來帶你了解這些約束的使用方式。
Thumbnail
本文將介紹如何使用 SQL 的 CREATE TABLE 指令來創建資料表,接下來將透過範例程式碼,帶你從基本語法開始了解 CREATE TABLE。
Thumbnail
本文將介紹 SQL 中的SELECT語句,這是從資料庫中查詢數據的基本命令,理解並掌握SELECT語句是學習SQL的重要一步。SELECT 語句是什麼?SELECT語句是 SQL 中用於從資料庫表格中查詢特定數據的基本命令,它可以讓您選擇特定的欄位,從而精確地獲取所需的數據。
Thumbnail
SQL 是一種專門用來和資料庫進行溝通的程式語言,它讓我們能夠創建資料表、新增、查詢、修改和刪除資料庫中的資料,本文將介紹基本的創建、新增、查詢、修改和刪除的 SQL 語法。