Как обнаружить любые изменения, которые происходят в базе данных SQL Server?
У меня есть приложение, использующее TADODataSet
а также TADOConnection
соединиться с базой данных SQL Server.
Я хотел бы обнаружить любые изменения, которые происходят в базе данных.
Изменения = Вставить, Обновить, Удалить
Я хочу знать какой TADODataset
или какая таблица была изменена.
Я делаю это, потому что у меня есть многопользовательское приложение, которое работает по локальной сети. Пользователи могут добавлять, удалять или редактировать записи в таблицах, поэтому я хочу обновить наборы данных, чтобы показать новые изменения.
Также я хочу, чтобы это построить журнал.
Я не хочу использовать TTime
продолжать следить за изменениями.
Я не хочу использовать триггеры
Я предпочитаю сообщение от TADOConnection
,
Я использую SQL Server 2005 и Delphi 2007 с компонентами ADO.
Новая модификация: мне нужно на SQL Server 2000
С уважением.
1 ответ
Возможно, не тот ответ, который вы ожидаете, но я думаю, что вы должны оценить Bold для Delphi. Мой работодатель Attracs успешно использовал Bold более десяти лет в большом многопользовательском приложении. У Bold есть много функций, которые упрощают разработку, когда приложение растет и все становится действительно сложным. В настоящее время Bold не поддерживает Unicode, поэтому его можно использовать только с D2007 или старше. Но у нас есть планы исправить это в будущем.
Bold решит вашу проблему с помощью автоматического обновления компонентов графического интерфейса, когда другой пользователь вносит изменения в базу данных.
Для получения дополнительной информации о Bold см. Мой блог на Boldfordelphi.