-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