牛腩新闻发布--触发器语句
目的
這篇博客是對上一篇博客進行優(yōu)化,上一篇博客講述了如何不用<新建觸發(fā)器>建立新的觸發(fā)器。這一篇博客中介紹一些觸發(fā)器的語句,希望大家能提出一些關于觸發(fā)器的問題,讓大伙一起討論討論。
“你有一個蘋果,我有一個蘋果,我們彼此交換,每人還是一個蘋果;你有一種思想,我有一種思想,我們彼此交換,每人可擁有兩種思想.”
內(nèi)容
插入語句INSERT
create trigger [插入觸發(fā)器名稱]on [表1名稱]for insert asselect * from [表2名稱]update [表5名稱] set [列4名稱]='' where [列5名稱]='' begindelete [表3名稱] where [列1名稱] in (select [列2名稱] from [表4名稱] where [列3名稱]='') end go刪除語句DELETE
create trigger [刪除觸發(fā)器名稱]on [表1名稱]for delete asselect * from [表2名稱]update [表5名稱] set [列4名稱]='' where [列5名稱]='' begindelete [表3名稱] where [列1名稱] in (select [列2名稱] from [表4名稱] where [列3名稱]='') end go修改語句UPDATE
create trigger [修改觸發(fā)器名稱]on [表1名稱]for update asupdate [表5名稱] set [列4名稱]='' where [列5名稱]='' begindelete [表3名稱] where [列1名稱] in (select [列2名稱] from [表4名稱] where [列3名稱]='') end go總結
大家可以發(fā)現(xiàn),有很多單詞在SQL中經(jīng)常用到,如下:
CREATE 語句,如:CREATE DATABASE、CREATE TABLE、CREATE INDEX 等。
ALTER 語句,如:ALTER DATABASE、ALTER TABLE、ALTER INDEX 等。
DROP 語句,如:DROP DATABASE、DROP TABLE、DROP INDEX 等。
DISK 語句,如:DISK INIT、DISK RESIZE。
LOAD 語句,如:LOAD DATABASE、LOAD LOG。
RESTORE 語句,如:RESTORE DATABASE、RESTORE LOG。
優(yōu)點
觸發(fā)器可通過數(shù)據(jù)庫中的相關表實現(xiàn)級聯(lián)更改,不過,通過級聯(lián)引用完整性約束可以更有效地執(zhí)行這些更改。觸發(fā)器可以強制用比CHECK約束定義的約束更為復雜的約束。與 CHECK 約束不同,觸發(fā)器可以引用其它表中的列。例如,觸發(fā)器可以使用另一個表中的 SELECT 比較插入或更新的數(shù)據(jù),以及執(zhí)行其它操作,如修改數(shù)據(jù)或顯示用戶定義錯誤信息。觸發(fā)器也可以評估數(shù)據(jù)修改前后的表狀態(tài),并根據(jù)其差異采取對策。一個表中的多個同類觸發(fā)器(INSERT、UPDATE 或 DELETE)允許采取多個不同的對策以響應同一個修改語句。
缺點
觸發(fā)器功能強大,輕松可靠地實現(xiàn)許多復雜的功能,為什么又要慎用呢。觸發(fā)器本身沒有過錯,但由于我們的濫用會造成數(shù)據(jù)庫及應用程序的維護困難。在數(shù)據(jù)庫操作中,我們可以通過關系、觸發(fā)器、存儲過程、應用程序等來實現(xiàn)數(shù)據(jù)操作…… 同時規(guī)則、約束、缺省值也是保證數(shù)據(jù)完整性的重要保障。如果我們對觸發(fā)器過分的依賴,勢必影響數(shù)據(jù)庫的結構,同時增加了維護的復雜程度。
總結
以上是生活随笔為你收集整理的牛腩新闻发布--触发器语句的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 普通话测试软件测试成绩很差,普通话测试成
- 下一篇: 人工神经网络连接方式,全连接神经网络作用