首頁  >  文章  >  資料庫  >  資料庫觸發器什麼用

資料庫觸發器什麼用

清浅
清浅原創
2019-05-05 17:10:3614159瀏覽

資料庫中的觸發器的作用:觸發器主要用於強制複雜的業務規則和要求,也有助於強制引用的完整性,便於在添加,更新或刪除表中的行時保留表之間已定義的關係。

資料庫觸發器什麼用

觸發器

觸發器是一種特殊類型的儲存過程,當使用下面的一種或多種資料修改操作在指定表中對資料進行修改時,觸發器會生效:UPDATE、INSERT 或DELETE。觸發器可以查詢其它表,而且可以包含複雜的 SQL 語句。它們主要用於強制複雜的業務規則或要求。例如,可以控制是否允許基於顧客的目前帳戶狀態插入定單。 

觸發器也有助於強制引用完整性,以便在新增、更新或刪除資料表中的資料列時保留資料表之間已定義的關係。然而,強制引用完整性的最佳方法是在相關表中定義主鍵和外鍵約束。如果使用資料庫關係圖,則可以在表之間建立關係以自動建立外鍵約束。

使用觸發器的優點 

(1)觸發器是自動的:它們在對錶的資料作了任何修改(例如手動輸入或應用程式採取的操作)之後立即啟動。 

(2)觸發器可以透過資料庫中的相關表格進行層疊變更。例如,可以在 titles 表的 title_id 列上寫入一個刪除觸發器,以使其它表中的各匹配行採取刪除操作。此觸發器以 title_id 欄位作為唯一鍵,在 titleauthor、sales 及 roysched 表中對各符合行進行定位。 

(3)觸發器可以強制限制,這些限制比用 CHECK 約束定義的更複雜。與 CHECK 約束不同的是,觸發器可以引用其它表中的列。例如,觸發器可以回滾試圖對價格低於 10 美元的書(儲存在 titles 表中)應用折扣 

#

以上是資料庫觸發器什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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