freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)庫存儲過程與觸發(fā)器(編輯修改稿)

2025-02-10 10:45 本頁面
 

【文章內(nèi)容簡介】 。2.觸發(fā)器的優(yōu)點? 觸發(fā)器有助于在添加、更新或刪除表中的記錄時保留表之間已定義的關(guān)系。? 觸發(fā)器可以自動調(diào)用,當(dāng)發(fā)生了對數(shù)據(jù)所作的任何修改時,與之相關(guān)的觸發(fā)器就會立刻被激活。? 可以完成數(shù)據(jù)庫中相關(guān)表之間的級聯(lián)修改。級聯(lián)修改是指為了保證數(shù)據(jù)之間的邏輯性以及依賴關(guān)系,在對一張表進(jìn)行修改的同時,其他表中需要進(jìn)行的修改能夠自動實現(xiàn)。? 觸發(fā)器可以對需要存儲的數(shù)據(jù)加以限制,并且能夠?qū)崿F(xiàn)比CHECK約束更為復(fù)雜的功能。在 CHECK約束中不允許引用其他表中的列,而觸發(fā)器可以引用。3.觸發(fā)方式 觸發(fā)器的觸發(fā)方式可以分為后觸發(fā)和替代觸發(fā)兩種方式。后觸發(fā):指能夠引發(fā)觸發(fā)器的修改操作在完成之后才執(zhí)行觸發(fā)器的行為方式。創(chuàng)建該類觸發(fā)器,需要使用 AFTER關(guān)鍵字或者 FOR關(guān)鍵字。替代觸發(fā):指定執(zhí)行一個觸發(fā)器,而不是執(zhí)行 SQL語句,這種替代觸發(fā)語句的方式稱為替代觸發(fā)方式。 創(chuàng)建觸發(fā)器可以使用企業(yè)管理器以及 CREATE TRIGGER語句兩種方式來創(chuàng)建觸發(fā)器。1.使用企業(yè)管理器創(chuàng)建觸發(fā)器① 打開企業(yè)管理器,在控制臺根目錄下依次展開服務(wù)器組、服務(wù)器節(jié)點、數(shù)據(jù)庫節(jié)點。② 選擇某一個數(shù)據(jù)庫,并雙擊【表】節(jié)點,在右側(cè)窗口的列表中選擇其中的一張表。③ 右擊所選中的表,在彈出的下拉菜單中選擇【所有任務(wù)】,并繼續(xù)選擇級聯(lián)菜單中的【管理觸發(fā)器】命令,將打開圖 89所示的【觸發(fā)器屬性】對話框。圖 89 【觸發(fā)器屬性】對話框④ 在【觸發(fā)器屬性】對話框的文本框中,將 [TRIGGER NAME]修改為新建觸發(fā)器的名稱,并輸入觸發(fā)器所包含的SQL語句。⑤ 通過點擊【檢查語法】按鈕來判斷觸發(fā)器的語法是否正確,最后,點擊【確定】按鈕保存新建的觸發(fā)器。2.使用 CREATE TRIGGER語句創(chuàng)建觸發(fā)器CREATE TRIGGER語句的部分語法格式:CREATE TRIGGER 觸發(fā)器名稱 ON { 表名 | 視圖名 } [ WITH ENCRYPTION ] FOR | AFTER | INSTEAD OF [DELETE] [,] [INSERT] [,] [UPDATE]AS SQL語句 [ ...n ] 其中:? 觸發(fā)器名稱 必須符合標(biāo)識符命名規(guī)則,并且在同一個數(shù)據(jù)庫中觸發(fā)器的名稱不允許重復(fù)。觸發(fā)器名稱中可以省略所有者名稱。? 表名或視圖名稱 是指建立觸發(fā)器所依賴的對象。也可以稱為觸發(fā)器表或觸發(fā)器視圖。? WITH ENCRYPTION 該選項的作用為對觸發(fā)器中所包含的 SQL語句進(jìn)行加密。? FOR或 AFTER 代表后觸發(fā)方式,即當(dāng)滿足所有的引用級聯(lián)操作和約束檢查后并且完成了 SQL 語句中指定的所有操作后,指定的觸發(fā)器才會被執(zhí)行。在視圖上不允許采用后觸發(fā)方式。? INSTEAD OF 表示替代觸發(fā)方式,每一個 INSERT、UPDATE、 DELETE 語句只能定義一個 INSTEAD OF 觸發(fā)器。? DELETE、 INSERT、 UPDATE 三個選項中應(yīng)該至少選擇其一,用于表示在表或視圖上執(zhí)行了哪一類的操作時會將觸發(fā)器激活。? SQL語句 為觸發(fā)器中包含的條件以及需要執(zhí)行的操作。 在執(zhí)行觸發(fā)器時,系統(tǒng)會自動創(chuàng)建兩張臨時表 INSERTED、 DELETED,這兩張表的結(jié)構(gòu)與觸發(fā)器所依賴的表類似,用于保存在用戶操作過程中被插入或被刪除的數(shù)據(jù)。每一個觸發(fā)器在執(zhí)行過程中都會產(chǎn)生與之相關(guān)的上述兩張臨時表,并且在執(zhí)行結(jié)束后,兩個臨時表會自動被系統(tǒng)刪除。對臨時表可以進(jìn)行查詢操作,如 SELECT * FROM DELETED,但是不能對臨時表進(jìn)行修改 【 例 85】在數(shù)據(jù)庫 XSCJ中設(shè)計一個觸發(fā)器,該觸發(fā)器的作用為:當(dāng)在班級表中刪除某一個班級時,在學(xué)生基本信息表中該班級所包含的學(xué)生信息也全部被刪除。提示:在此例中,由于涉及到了班級表的刪除操作,因而需要設(shè)計一個 DELETE類型的觸發(fā)器。在查詢分析器中運(yùn)行如下命令:USE XSCJGOCREATE TRIGGER del_bj ON 班級表AFTER DELETEAS DELETE FROM 學(xué)生基本信息表 WHERE 班級編號 IN (SELECT 班級編號 FROM DELETED)GO運(yùn)行結(jié)果如圖 810所示。圖 810 一個 DELETE類型的觸發(fā)器【 例 86】在數(shù)據(jù)庫 XSCJ中設(shè)計一個觸發(fā)器,該觸發(fā)器能夠保證在學(xué)生基本信息表中添加新的紀(jì)錄時,新學(xué)生的班級編號必須已經(jīng)存在于班級表中。提示:設(shè)計該觸發(fā)器有助于實現(xiàn)學(xué)生信息的完整性。在此例中由于涉及到了學(xué)生基本信息表中的添加操作,因而需要設(shè)計一個 INSERT類型的觸發(fā)器。在查詢分析器中運(yùn)行如下命令:USE XSCJGOCREATE TRIGGER insert_xs ON 學(xué)生基本信息表AFTER INSERTAS IF EXISTS ( SELECT * FROM INSERTED WHERE 班級編號 IN (SELECT 班級編號 FROM 班級表 ) ) PRINT 39。添加成功! 39。 ELSE BEGIN PRI
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1