2009-11-24 3 views
0

Мне нужно отслеживать изменения в записи в базе данных. У меня есть несколько триггеров в разных таблицах, которые вызывают одну хранимую процедуру, и этот sp обновляет записи в определенной таблице (таблица1).Можно ли отслеживать записи базы данных по SQL-запросу из файла журнала?

Я буду отслеживать записи в таблице1, чтобы узнать, когда и где данные будут изменены.

На самом деле я использую sybase 12.5, и я бы знал, как читать файл LOG с помощью SQL-запроса в sybase или sql-сервере.

Tanx :)

+0

Как часто меняется эта таблица? –

ответ

1

Я не думаю, что мы можем прочитать журнал транзакций с помощью SQL-запроса, если нет некоторые инструменты, такие как Fog Light

Насколько я знаю, мы можем использовать команду DBCC

DBCC LOG ([{0 | 1 | 2 | 3 | 4}])

0 - Basic информация журнала (по умолчанию)

1 - Продолжительное Info

2 - Очень Длина информация

3 - Подробное

4 - Полный

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

+0

tanx, ok, эта команда получает некоторые данные из журнала транзакций, но его вывод в шестнадцатеричном формате и не помогает :(. Я знаю, что сервер sql хранит версию данных до и после их изменения. Я хочу прочитать эти данные, начиная с поначалу. –

0

Я думаю, что единственный способ отслеживания изменений - написать триггер ...