-2
我有一个SQL Server INSTEAD OF INSERT
触发器,它填充我的表中的值。但是,当我运行一个INSERT语句,我得到SQL Server触发器:在区分大小写的数据库中插入'无效的对象名'
无效的对象名称插入“错误
现在我的数据库排序规则设置为区分大小写的,所以我不知道是否该'插入'的情况是原因,但我试过插入,插入和插入。
我的触发类似于:
CREATE TRIGGER UpdateID
ON Personnel
INSTEAD OF INSERT
AS
BEGIN
DECLARE @SQL nvarchar(4000)
DECLARE @NewID int = 100 --Will be auto generated
SET @SQL = 'INSERT INTO Personnel (AutoID, Firstname, Surname)
SELECT ' + CAST(@NewID AS nvarchar) + ', Firstname, Surname
FROM inserted'
EXECUTE (@SQL)
END
为什么你使用动态SQL - 在这里似乎没有必要。 –
不仅是不必要的,而且是错误的原因... – petelids
为什么要在同一个表格触发器的'Personnel'表中插入记录?它会创建递归。 – Shell