MySQL觸發器簡介及優缺點

2019-10-16 22:55:54

在本教學中,我們將簡要介紹SQL觸發器的優點和缺點。

SQL觸發器是儲存在資料庫目錄中的一組SQL語句。每當與表相關聯的事件發生時,即會執行或觸發SQL觸發器,例如插入,更新或刪除。

SQL觸發器是一種特殊型別的儲存過程。 這是特別的,因為它不像直接像儲存過程那樣呼叫。 觸發器和儲存過程之間的主要區別在於,當對錶執行資料修改事件時,會自動呼叫觸發器,而儲存過程必須要明確地呼叫。

了解SQL觸發器的優缺點非常重要,以便您可以適當地使用它。在以下部分中,我們將討論使用SQL觸發器的優缺點。

SQL觸發器的優點

  • SQL觸發器提供了檢查資料完整性的替代方法。
  • SQL觸發器可以捕獲資料庫層中業務邏輯中的錯誤。
  • SQL觸發器提供了執行計劃任務的另一種方法。通過使用SQL觸發器,您不必等待執行計劃的任務,因為在對錶中的資料進行更改之前或之後自動呼叫觸發器。
  • SQL觸發器對於稽核表中資料的更改非常有用。

SQL觸發器的缺點

  • SQL觸發器只能提供擴充套件驗證,並且無法替換所有驗證。一些簡單的驗證必須在應用層完成。 例如,您可以使用JavaScript或伺服器端使用伺服器端指令碼語言(如JSPPHP,ASP.NET,Perl等)來驗證用戶端的使用者輸入。
  • 從用戶端應用程式呼叫和執行SQL觸發器不可見,因此很難弄清資料庫層中發生的情況。
  • SQL觸發器可能會增加資料庫伺服器的開銷。

使用觸發器還是儲存過程,如何選擇? 建議如果您無法使用儲存過程完成工作時,考慮使用SQL觸發器。

在下一個教學中,我們將介紹觸發器如何在MySQL中工作,以及如何為資料庫建立觸發器