-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathddl_trigger.sql
49 lines (38 loc) · 914 Bytes
/
ddl_trigger.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--DDL operation
--CREATE, ALTER, DROP, RENAME (table, function, index, stored procedure)
CREATE TRIGGER trOnDb
ON DATABASE
FOR CREATE_TABLE, ALTER_TABLE, DROP_TABLE
AS
BEGIN
PRINT 'A table has just created, nodified or deleted'
END
CREATE TABLE tblTestForTrigger (Id INT)
ALTER TRIGGER trForRollBack
ON DATABASE
FOR DROP_TABLE
AS
BEGIN
ROLLBACK
PRINT 'Table can not be deleted. Rollback from trigger'
END
DISABLE TRIGGER trOnDb ON DATABASE
DROP TABLE tblTestForTrigger
ENABLE TRIGGER trOnDb ON DATABASE
DISABLE TRIGGER trForRollBack ON DATABASE
CREATE TRIGGER trForRename
ON DATABASE
FOR RENAME
AS
BEGIN
PRINT 'Name updated successfully!'
END
EXEC sp_rename 'tblStudentsAudit', 'tblStudentAudit'
EXEC sp_rename 'tblTestForTrigger.Id', 'ID', 'column'
DROP TRIGGER trForRename ON DATABASE
CREATE TRIGGER trForRenameOnServerObj
ON ALL SERVER
FOR RENAME
AS BEGIN
PRINT 'Object rename successfully!'
END