我有一个表(周期),我创建了一个触发如何在SQL Server 2008中使用备份与触发器?
alter trigger AnyName on Cycles
for insert,update,delete
AS
BACKUP DATABASE medrepcrm TO DISK = N'C:\medrepcrm.bak' WITH NOFORMAT, INIT, NAME = N'pcrm-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
但是当我插入,更新,或导致错误的周期表中删除。
Msg 3021, Level 16, State 0, Procedure AnyName, Line 8
Cannot perform a backup or restore operation within a transaction.
Msg 3013, Level 16, State 1, Procedure AnyName, Line 8
BACKUP DATABASE is terminating abnormally.
The statement has been terminated.
我该如何解决这个错误?
你为什么试图在触发器内执行备份? (如果我们了解动机,我们可以建议替代方案) – 2010-08-31 12:44:39
我很惊讶BACKUP命令在触发器内甚至是有效的! – 2011-01-29 01:21:45