Генерация общего оператора вставки из существующей строки для отключенной вставки в другую базу данных для синхронизации
В настоящее время у нас есть консольное приложение aC#, которое создает таблицу синхронизации из триггеров, которая позволяет приложению отправлять оператор вставки обновления или удаления в другую копию базы данных на другом сайте. Это обеспечивает синхронизацию таблиц, однако система регулярно падает, и у нас нет исходного кода.
В настоящее время я пытаюсь воссоздать это на сервере SQL.
Таблица синхронизации генерируется в триггере для каждой таблицы и добавляет
TableName Action RowNumer columns_updated
test Insert 10 0x3
test2 Delete 2
test update 15 07x
Из этого я могу сгенерировать оператор вставки, обновления или удаления, который можно запустить на удаленном сервере, но с тысячами строк это будет слишком медленным.
Insert server2.test.column1,column2,column3.column4 select column1,column2,colum3,column4 from
server1.test where row = RowNumber
Я хотел бы сгенерировать оператор вставки на сервере server1, а затем просто запустить его на сервере server 2.
"Insert column1.column2.colum3.column4 into table1 values 110000,New Order, £99.00, 'John Smith'"
У кого-нибудь есть способ записать оператор вставки в строку таблицы в виде строки, готовой для обработки на сервере 2. Этот выбор не должен выполняться в триггере.
то есть прочитать любую строку в любой таблице и преобразовать ее в оператор вставки?