首頁 >資料庫 >mysql教程 >mysql有觸發器嗎

mysql有觸發器嗎

青灯夜游
青灯夜游原創
2022-06-21 14:27:273895瀏覽

mysql有觸發器。 MySQL觸發器是儲存在資料庫目錄中的一組SQL語句集合,是MySQL中管理資料的強大工具,主要用於保護表中的資料。 MySQL支援三種觸發器:1、INSERT觸發器,是在INSERT語句執行之前或之後回應的觸發器;2、UPDATE觸發器,是在UPDATE語句執行之前或之後回應的觸發器;3、DELETE觸發器,是在DELETE語句執行之前或之後回應的觸發器。

mysql有觸發器嗎

本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。

mysql有觸發器。

MySQL 的觸發器和預存程序一樣,都是嵌入到 MySQL 中的一段程序,是儲存在資料庫目錄中的一組SQL語句集合,是 MySQL 中管理資料的有力工具。不同的是執行預存程序要使用 CALL 語句來調用,而觸發器的執行不需要使用 CALL 語句來調用,也不需要手動啟動,而是透過對資料表的相關操作來觸發、啟動從而實現執行。例如當對 student 表進行操作(INSERT,DELETE 或 UPDATE)時就會啟動它執行。

觸發器與資料表關係密切,主要用於保護表中的資料。特別是當有多個表具有一定的相互聯繫的時候,觸發器能夠讓不同的表保持資料的一致性。

在 MySQL 中,只有執行 INSERT、UPDATE 和 DELETE 作業時才能啟動觸發器,其它 SQL 語句則不會啟動觸發器。

觸發器的優缺點

觸發器的優點如下:

  • 觸發器的執行是自動的,當對觸發器相關表的資料做出相應的修改後立即執行。

  • 觸發器可以實作比 FOREIGN KEY 約束、CHECK 限制更為複雜的檢查和操作。

  • 觸發器可以實現表格資料的級聯更改,在一定程度上保證了資料的完整性。

觸發器的缺點如下:

  • 使用觸發器實現的業務邏輯在出現問題時很難進行定位,特別是涉及到多個觸發器的情況下,會使後期維護變得困難。

  • 大量使用觸發器容易導致程式碼結構被打亂,增加了程式的複雜性,

  • 如果需要變動的資料量較大時,觸發器的執行效率會非常低。

MySQL觸發器有三種:

MySQL 所支援的觸發器有三種:INSERT 觸發器、UPDATE 觸發器和DELETE 觸發器。

1) INSERT 觸發器

  在 INSERT 語句執行之前或之後回應的觸發器。

2) UPDATE 觸發器

  在 UPDATE 語句執行之前或之後回應的觸發器。

3) DELETE 觸發器

  在 DELETE 語句執行之前或之後回應的觸發器。

【相關推薦:mysql影片教學

#

以上是mysql有觸發器嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn