MySQL 8.4 參考手冊  /  儲存物件  /  使用儲存程序

27.2 使用儲存程序

MySQL 支援儲存程序(程序和函數)。儲存程序是一組可以儲存在伺服器中的 SQL 陳述式。一旦完成此操作,客戶端就不需要重複發出個別陳述式,而是可以改為參照儲存程序。

在某些情況下,儲存程序特別有用

  • 當多個客戶端應用程式以不同的語言編寫或在不同的平台上工作,但需要執行相同的資料庫操作時。

  • 當安全性至關重要時。例如,銀行對所有常見操作使用儲存程序和函數。這提供了一致且安全的環境,並且程序可以確保每個操作都被正確記錄。在這種設定中,應用程式和使用者將無法直接存取資料庫表格,而只能執行特定的儲存程序。

儲存程序可以提高效能,因為伺服器和客戶端之間需要傳送的資訊較少。這樣做的缺點是會增加資料庫伺服器的負載,因為更多的工作是在伺服器端完成,而在客戶端(應用程式)端完成的較少。如果許多客戶端機器(例如 Web 伺服器)僅由一個或少數資料庫伺服器提供服務,請考慮這一點。

儲存程序還允許您在資料庫伺服器中擁有函數庫。這是現代應用程式語言共有的功能,這些語言可以在內部啟用這種設計(例如,透過使用類別)。即使在資料庫使用範圍之外,使用這些客戶端應用程式語言功能也對程式設計人員有利。

MySQL 遵循 SQL:2003 儲存程序語法,IBM 的 DB2 也使用該語法。此處描述的所有語法都受支援,任何限制和擴展都會在適當的地方記錄。

其他資源