Trigger Scripts for Cascading DELETEs : Trigger « Trigger « SQL Server / T-SQL Tutorial

Home
SQL Server / T-SQL Tutorial
1.Query
2.Insert Delete Update
3.Table
4.Table Join
5.Data Types
6.Set Operations
7.Constraints
8.Subquery
9.Aggregate Functions
10.Date Functions
11.Math Functions
12.String Functions
13.Data Convert Functions
14.Analytical Functions
15.Sequence Indentity
16.View
17.Index
18.Cursor
19.Database
20.Transact SQL
21.Procedure Function
22.Trigger
23.Transaction
24.XML
25.System Functions
26.System Settings
27.System Tables Views
28.User Role
29.CLR
SQL Server / T-SQL Tutorial » Trigger » Trigger 
22.1.14.Trigger Scripts for Cascading DELETEs
3>
4CREATE TABLE Parent(
5>   ID int NOT NULL PRIMARY KEY
6)
7> GO
1CREATE TABLE Child(
2>   ID int NOT NULL PRIMARY KEY
3>                   REFERENCES Parent (ID)
4>                   ON DELETE CASCADE
5)
6> GO
1CREATE TABLE GrandChild(
2>   ID int NOT NULL PRIMARY KEY
3>                   REFERENCES Child (ID)
4>                   ON DELETE CASCADE
5)
6> GO
1INSERT Parent VALUES (1)
2INSERT Parent VALUES (2)
3INSERT Parent VALUES (3)
4INSERT Parent VALUES (4)
5> GO

(rows affected)

(rows affected)

(rows affected)

(rows affected)
1INSERT Child VALUES (1)
2INSERT Child VALUES (2)
3INSERT Child VALUES (3)
4INSERT Child VALUES (4)
5> GO

(rows affected)

(rows affected)

(rows affected)

(rows affected)
1INSERT GrandChild VALUES (1)
2INSERT GrandChild VALUES (2)
3INSERT GrandChild VALUES (3)
4INSERT GrandChild VALUES (4)
5> GO

(rows affected)

(rows affected)

(rows affected)

(rows affected)
1CREATE TRIGGER trd_Parent ON Parent AFTER DELETE
2> AS
3> IF @@ROWCOUNT = 0
4>   RETURN
5> PRINT 'Inside Parent trigger.'
6> GO
1CREATE TRIGGER trd_Child ON Child AFTER DELETE
2> AS
3> IF @@ROWCOUNT = 0
4>   RETURN
5> PRINT 'Inside Child trigger.'
6> GO
1CREATE TRIGGER trd_GrandChild ON GrandChild AFTER DELETE
2> AS
3> IF @@ROWCOUNT = 0
4>   RETURN
5> PRINT 'Inside GrandChild trigger.'
6> GO
1> --Firing the Cascaded DELETE
2DELETE Parent
3WHERE
4>   ID BETWEEN AND 3
5>
6> drop trigger trd_parent
7> drop trigger trd_child
8> drop trigger trd_grandchild
9> drop table grandchild
10> drop table child
11> drop table parent
12> GO
Inside GrandChild trigger.
Inside Child trigger.

(rows affected)
Inside Parent trigger.
22.1.Trigger
22.1.1.The syntax of the CREATE TRIGGER statement
22.1.2.exits if the price column has not been updated.
22.1.3.Define variables in a trigger
22.1.4.Update table in a trigger
22.1.5.Check @@ROWCOUNT in a trigger
22.1.6.Rollback transaction in a trigger
22.1.7.RAISERROR in trigger
22.1.8.Disable a trigger
22.1.9.Enable a trigger
22.1.10.Check business logic in a trigger
22.1.11.Check record matching in a trigger
22.1.12.Table for INSTEAD OF Trigger for Logical Deletes
22.1.13.INSTEAD OF INSERT trigger for a table
22.1.14.Trigger Scripts for Cascading DELETEs
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.