久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

數據庫觸發器舉例分析

147次閱讀
沒有評論

共計 2115 個字符,預計需要花費 6 分鐘才能閱讀完成。

這篇文章主要講解了“數據庫觸發器舉例分析”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“數據庫觸發器舉例分析”吧!

我們維護一張客戶表,這張表的內容在周六和周日不允許修改。這就是客戶表:

CREATE TABLE plch_customers
 custnum INTEGER
, custname VARCHAR2 (100)
)

我需要創建一個觸發器來阻止周末對這張表的任何插入、修改和刪除。我寫了這些代碼:

CREATE OR REPLACE TRIGGER plch_customers_maint_trg
 /*TEXT*/
DECLARE
BEGIN
 IF TO_CHAR (SYSDATE,  DY ,  NLS_DATE_LANGUAGE=ENGLISH)
 IN (SAT ,  SUN)
 THEN
 RAISE_APPLICATION_ERROR (-20000
 ,  Customers maintained Monday-Friday only. 
 END IF;
/

哪些選項可用來取代文中的 /*TEXT*/, 使得這個觸發器不允許周末對 plch_customers 表執行任何 DML 操作,并且每個語句只觸發一次?

(A)

BEFORE UPDATE ON plch_customers FOR EACH ROW
BEFORE INSERT ON plch_customers FOR EACH ROW
BEFORE DELETE ON plch_customers FOR EACH ROW
SQL  
CREATE OR REPLACE TRIGGER plch_customers_maint_trg
BEFORE UPDATE ON plch_customers FOR EACH ROW
BEFORE INSERT ON plch_customers FOR EACH ROW
BEFORE DELETE ON plch_customers FOR EACH ROW
DECLARE
BEGIN
 IF TO_CHAR (SYSDATE,  DY ,  NLS_DATE_LANGUAGE=ENGLISH)
 IN (SAT ,  SUN)
 THEN
 RAISE_APPLICATION_ERROR (-20000
 ,  Customers maintained Monday-Friday only. 
 END IF;
ORA-04079:  無效的觸發器說明
SQL 

(B)

BEFORE UPDATE ON plch_customers
BEFORE INSERT ON plch_customers
BEFORE DELETE ON plch_customers
SQL  
CREATE OR REPLACE TRIGGER plch_customers_maint_trg
BEFORE UPDATE ON plch_customers
BEFORE INSERT ON plch_customers
BEFORE DELETE ON plch_customers
DECLARE
BEGIN
 IF TO_CHAR (SYSDATE,  DY ,  NLS_DATE_LANGUAGE=ENGLISH)
 IN (SAT ,  SUN)
 THEN
 RAISE_APPLICATION_ERROR (-20000
 ,  Customers maintained Monday-Friday only. 
 END IF;
ORA-04079:  無效的觸發器說明
SQL 

(C)

BEFORE UPDATE, INSERT OR DELETE ON plch_customers
SQL  
CREATE OR REPLACE TRIGGER plch_customers_maint_trg
BEFORE UPDATE, INSERT OR DELETE ON plch_customers
DECLARE
BEGIN
 IF TO_CHAR (SYSDATE,  DY ,  NLS_DATE_LANGUAGE=ENGLISH)
 IN (SAT ,  SUN)
 THEN
 RAISE_APPLICATION_ERROR (-20000
 ,  Customers maintained Monday-Friday only. 
 END IF;
ORA-00969:  缺失  ON  關鍵字
SQL 

(D)

BEFORE UPDATE OR INSERT OR DELETE ON plch_customers FOR EACH ROW
SQL  
Trigger created
SQL

(E)

BEFORE UPDATE OR INSERT OR DELETE ON plch_customers
SQL  
Trigger created
SQL

答案 E

D 不是答案因為每行都會觸發,不滿足條件。

感謝各位的閱讀,以上就是“數據庫觸發器舉例分析”的內容了,經過本文的學習后,相信大家對數據庫觸發器舉例分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-26發表,共計2115字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 连平县| 繁峙县| 扎鲁特旗| 清水县| 贡觉县| 溧水县| 菏泽市| 邵阳县| 通州区| 黄冈市| 崇左市| 昌江| 黔西| 合水县| 健康| 青海省| 通道| 博湖县| 获嘉县| 都江堰市| 碌曲县| 铁力市| 武汉市| 荆州市| 淮滨县| 黄平县| 泸溪县| 平陆县| 龙游县| 西乌珠穆沁旗| 陆川县| 休宁县| 秦安县| 丰都县| 疏附县| 扶余县| 黔西县| 洛扎县| 泗阳县| 额尔古纳市| 福建省|