2
我需要阻止删除职业为'程序员'的用户。 因此,数据库表结构是:在使用transact-SQL删除触发器之前
TABLE Client
Id | Name | SSN | Occupation | Birthdate |
我到目前为止创建触发看起来是这样的:
CREATE TRIGGER Check_User_Occupation
ON dbo.Client
FOR DELETE
AS
BEGIN
IF(SELECT c.Occupation
FROM deleted AS d
INNER JOIN Client as c ON d.Id = c.Id) = 'Programmer'
BEGIN
PRINT 'YES';
ROLLBACK TRAN
RAISEERROR(SELECT 'Could not delete client because he is a programmer');
END
END
GO
我想它可以比之前该行被删除,但我不不知道解决这个问题的正确方法。
任何帮助表示赞赏!
使用而不是删除触发器。 –