Возможно ли получить удобочитаемую запись всех транзакций в базе данных SQL Server?

#sql-server #logging

#sql-server #ведение журнала

Вопрос:

Например, журнал, который показывает, когда какое значение было изменено с какого на какое в какой таблице, строке и поле?

Комментарии:

1. @Michael Haren, на данный момент я не знаю, потому что я не администрирую ее. У нас просто возникла проблема с одной из наших программ и баз данных, которая поддерживается кем-то другим.

Ответ №1:

Помимо изучения конкретной проблемы, не рекомендуется использовать журнал транзакций для этой цели. Существует много проблем, одна из которых, в частности, связана с чтением из нее при наличии параллельных транзакций, которые могут вызвать ошибки нарушения доступа.

http://www.sqlservercentral.com/blogs/hugo/archive/2009/01/17/it-s-minus-twenty-five-outside-and-i-m-writing-about-transaction-log-files.aspx

Как указывали другие, создайте свой собственный или используйте Change Data Capture (CDC) или Change Tracking (CT), если вы используете SQL Server 2008 и выше.

Ответ №2:

вы можете создавать свои собственные.

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