所以首先让我承认我是一个 SQL Server 新手。
这是交易:我正在尝试在 SQL Server 2012 中的表上创建触发器,并且每当我SELECT
在触发器中尝试任何类型的语句时,表都会停止工作(因为在删除触发器之前可以插入任何内容)。我一放下扳机,一切就又开始工作了。如果我不做任何SELECT
事情,一切都是桃子。是否有许可或我缺少的地方?
例子:
CREATE TRIGGER sometrigger
ON sometable
FOR INSERT
AS
BEGIN
SELECT * FROM inserted
END
GO
命令成功完成,但如上所述,表被冻结。
CREATE TRIGGER sometrigger
ON sometable
FOR INSERT
AS
BEGIN
EXEC msdb.dbo.sp_send_dbmail
@recipients = N'someaddress@somedomain.com',
@subject = 'test',
@body = 'test body',
@profile_name = 'someprofile'
END
GO
奇迹般有效。