テーブル上のトリガーのように、他にも何かが起こっているに違いありません
これは正常に動作します
CREATE TABLE Test(id INT PRIMARY KEY, bla CHAR(1))
GO
INSERT Test VALUES(1,'a')
INSERT Test VALUES(2,'b')
UPDATE Test SET id = 1 WHERE id = 1
トリガーがあるかどうかを調べる
SELECT OBJECT_NAME(parent_id),*
FROM sys.triggers
WHERE OBJECT_NAME(parent_id) = 'YourTable'