Database reference - AdventureWorks2008

AdventureWorks2008 -  triggers -  [HumanResources].[dEmployee]

Description

INSTEAD OF DELETE trigger which keeps Employees from being deleted. 

Trigger properties

namevalue
parentEmployee
typeInstead of Delete   
is first insertfalse
is last insertfalse
is first updatefalse
is last updatefalse
is last deletefalse
is first deletefalse
is disabledfalse
is not for replicationtrue

Dependency graph

EmployeedEmployee

Objects that [HumanResources].[dEmployee] depends on

nameobject typedatabaseserverlevel
EmployeetableAdventureWorks2008SPRING\KATMAI1
FlagtypeAdventureWorks2008SPRING\KATMAI2

Code

CREATE TRIGGER [HumanResources].[dEmployee] ON [HumanResources].[Employee] 
INSTEAD OF DELETE NOT FOR REPLICATION AS 
BEGIN
    DECLARE @Count int;

    SET @Count = @@ROWCOUNT;
    IF @Count = 0 
        RETURN;

    SET NOCOUNT ON;

    BEGIN
        RAISERROR
            (N'Employees cannot be deleted. They can only be marked as not current.', -- Message
            10, -- Severity.
            1); -- State.

        -- Rollback any active or uncommittable transactions
        IF @@TRANCOUNT > 0
        BEGIN
            ROLLBACK TRANSACTION;
        END
    END;
END;



Documentation generated by SqlSpec