Монитор SQL Server вставляет, обновляет и удаляет данные из устаревшего приложения - PullRequest
2 голосов
/ 10 октября 2019

В настоящее время у нас есть устаревшее настольное приложение, которое использует SQL Server 2014 в качестве базы данных. Мы хотели бы добавить некоторые дополнительные функции вне программного обеспечения, к которым у нас нет исходного кода.

Как мы можем отслеживать, какие данные вставляются, обновляются или удаляются в разные таблицы в базе данных, когда определенныезадача завершена в настольном программном обеспечении? Это позволило бы нам добавлять данные в базу данных так же, как это делает настольное приложение.

Мы пробовали SQL Profiler, но не можем получить информацию.

Есть ли способ получить разницу между двумя моментами времени из одной базы данных?

Ответы [ 2 ]

0 голосов
/ 12 октября 2019
We have tried SQL Profiler but can't seem to get the information

^ Это правильный курс действий. Триггеры покажут вам только конечный результат запросов, а не то, какие запросы на самом деле выполняются - это могут быть вычисления, промежуточные шаги и т. Д.

Когда вы говорите, что «не можете получить информацию», что именноты имеешь ввиду? Профилировщик сможет показать вам текст всех запросов, выполненных для экземпляра SQL

0 голосов
/ 10 октября 2019

Вы можете использовать триггер, который автоматически запускается в ответ на Create, Update, Delete. Вы можете создать триггеры для каждой таблицы, и он даст вам необходимую информацию

CREATE TRIGGER [schema_name.]trigger_name
ON table_name
AFTER  {[INSERT],[UPDATE],[DELETE]}
[NOT FOR REPLICATION]
AS
{sql_statements}
...