| |
|
|
| | Доброго времени суток всем!
Проблема!
Клиент - Access 2000 mdb.
Сервер - MS SQL 2000+SP3 (участвует в репликации подписчиком)
Таблицы прилинкованы через ODBC
При добавлении новой записи в таблицу происходит следующее. Запись добавляется, но вместо нее отображается запись, которая была добавлена ранее!
Например! Новой записи должен быть присвоено значение счетчика, к примеру - 1000! После сохранения новой записи, на месте добавленной, отображается запись с номером ИД из начала таблицы, к примеру - 10!
Но при обновлении набора данных новая запись все таки добавилась и действительно получила номер счетчика 1000.
При повторном добавлении записи, вместо 1001 будет отображаться запись с ИД 11!
И так далее!
Такая ситуация наблюдается при различных способах добавления! То ли я таблицу открою для редактирования и вконец вставляю запись или через форму добавляю запись, с последующим сохранением - картина все время одна и та же! Вместо новой записи на ее месте отображается старая запись
Методом научного тыка выяснилось, что виноват в таком поведении репликационный тригер! если его отключить то ИД присваиваются как положено!
Сталкивался ли кто с подобной проблемой и как это можно вылечить?
Заранее благодарю за помощь! | |
| |
| |
| |
|
|
| | Разобрался
Может кому то пригодиться
Проблема решается переносом в репликационном триггере на вставку строки
set nocount on
в первую строчку после
CREATE trigger [trg_MSsync_ins_Table] on [dbo].[Table] for insert not for replication
as | |
| |
| |
| |
|
|
| | Рано обрадовался!
В этом случае репликация перестает работать! :((( | |
| |
| |