【例5.22】-P169 觸發器使用說明
1. 參考教材內容,新建Student表
2. 新建表StudentInsertLog
存儲學生人數
CREATE TABLE StudentInsertLog
(
Numbers INT
)
3. 新建表StudentInsertLogUser
存儲用戶名和操作時間
CREATE TABLE StudentInsertLogUser
(
UserName nchar(10),
DateAndTime datetime
)
4. 新建觸發器Student_Count
當插入新的學生記錄時,觸發器啓動,自動在StudentInsertLog記錄學生人數
CREATE TRIGGER Student_Count
ON Student
AFTER
INSERT
AS
INSERT INTO StudentInsertLog(Numbers)
SELECT COUNT(*) FROM Student
5. 新建觸發器Student_Time
當插入新的學生記錄時,觸發器啓動,自動在StudentInsertLogUser記錄用戶名和操作時間
CREATE TRIGGER Student_Time
ON Student
AFTER
INSERT
AS
declare @UserName nchar(10)
declare @DateTime datetime
select @UserName = system_user
select @DateTime = CONVERT(datetime,GETDATE(),120) --2018-04-11 16:33:10
INSERT INTO StudentInsertLogUser(UserName,DateAndTime)
VALUES (@UserName,@DateTime)
6. 測試觸發器效果
INSERT
INTO Student
VALUES ('201215135','王五','男',18,'CS');
SELECT * FROM Student
SELECT * FROM StudentInsertLog
SELECT * FROM StudentInsertLogUser