創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)建站企業(yè)建站,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),專注于網(wǎng)站建設(shè)技術(shù),精于網(wǎng)頁設(shè)計(jì),有多年建站和網(wǎng)站代運(yùn)營經(jīng)驗(yàn),設(shè)計(jì)師為客戶打造網(wǎng)絡(luò)企業(yè)風(fēng)格,提供周到的建站售前咨詢和貼心的售后服務(wù)。對于做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)中不同領(lǐng)域進(jìn)行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設(shè)中充分了解客戶行業(yè)的需求,以靈動的思維在網(wǎng)頁中充分展現(xiàn),通過對客戶行業(yè)精準(zhǔn)市場調(diào)研,為客戶提供的解決方案。這篇文章主要介紹postgresql觸發(fā)器的使用方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
PostgreSQL觸發(fā)器是一組動作或數(shù)據(jù)庫回調(diào)函數(shù),它們在指定的表上執(zhí)行指定的數(shù)據(jù)庫事件(即,INSERT,UPDATE,DELETE或
TRUNCATE語句)時(shí)自動運(yùn)行。 觸發(fā)器用于驗(yàn)證輸入數(shù)據(jù),執(zhí)行業(yè)務(wù)規(guī)則,保持審計(jì)跟蹤等。
觸發(fā)器的重點(diǎn)知識:
PostgreSQL在以下情況下執(zhí)行/調(diào)用觸發(fā)器:在嘗試操作之前(在檢查約束并嘗試INSERT,UPDATE或DELETE之前)?;蛘咴诓僮魍瓿珊?/p>
(在檢查約束并且INSERT,UPDATE或DELETE完成后)。或者不是操作(在視圖中INSERT,UPDATE或DELETE的情況下)
對于操作修改的每一行,都會調(diào)用一個(gè)標(biāo)記為FOR EACH ROWS的觸發(fā)器。 另一方面,標(biāo)記為FOR EACH STATEMENT的觸發(fā)器只對任
何給定的操作執(zhí)行一次,而不管它修改多少行。
您可以為同一事件定義同一類型的多個(gè)觸發(fā)器,但條件是按名稱按字母順序觸發(fā)。
當(dāng)與它們相關(guān)聯(lián)的表被刪除時(shí),觸發(fā)器被自動刪除。
PostgreSQL創(chuàng)建觸發(fā)器:
CREATE TRIGGER語句用于在PostgreSQL表中創(chuàng)建一個(gè)新的觸發(fā)器。 當(dāng)表發(fā)生特定事件(即INSERT,UPDATE和DELETE)時(shí),它被激活。
語法:
CREATE TRIGGER trigger_name [BEFORE|AFTER|INSTEAD OF] event_name ON table_name [ -- Trigger logic goes here.... ];
在這里,event_name可以是INSERT,UPDATE,DELETE和TRUNCATE數(shù)據(jù)庫操作上提到的表table_name。 您可以選擇在表名后指定
FOR EACH ROW。
下面來看看看如何在INSERT操作中創(chuàng)建觸發(fā)器的語法。
CREATE TRIGGER trigger_name AFTER INSERT ON column_name ON table_name [ -- Trigger logic goes here.... ];
以上是postgresql觸發(fā)器的使用方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!