У меня SQL Сервер Express, установленный на моем компьютере, и другой компьютер, который служит в качестве удаленного сервера (связанный сервер). Я хочу добиться двухсторонней синхронизации (без операции удаления требуется). Поскольку у меня большая база данных, и она работает очень медленно с syn c framework, поэтому опция framework исключена. Я использую столбец отметки времени для syn c. У меня также есть триггеры для обновления столбца datetime, например:
CREATE TRIGGER trgTmStmpCmdList
ON [dbo].cmdlist
AFTER UPDATE
AS BEGIN
UPDATE [dbo].cmdlist
SET TmStamp = GETDATE()
FROM INSERTED i
WHERE i.uid = [dbo].cmdlist.uid
END
Теперь запрос вставки работает отлично, и запрос обновления работает на моем компьютере, но когда я пытаюсь обновить строку на удаленном сервере, он выдает ошибку
Эта операция конфликтует с другой ожидающей операцией в этой транзакции. Операция не удалась
Например, мой запрос на обновление:
UPDATE e
SET e.Type = 'test'
FROM [serevername].[dbname].dbo.[tablename] e
WHERE e.uid = '2716cba3-c09d-4fa4-8b43-882e3bedb80d'
ПРИМЕЧАНИЕ: если я удалю триггер, то он будет работать без ошибок.
Любая помощь приветствуется.