Я впервые создаю журнал аудита для приложения PoS WPF, и мне было интересно, как именно я внедряю систему аудита, потому что кажется, что у каждого варианта есть свои плюсы и минусы.Пока я не читал многочисленные статьи / темы, я сузил несколько распространенных методов ведения журналов аудита:
1.Триггеры - К сожалению, из-за характера моего приложения я не могу использовать триггеры, поскольку у него нет возможности узнать, какой пользователь выполнил действие.Поэтому вместо этого я создал хранимую процедуру, которая будет обрабатывать вставку клиента вместе со вставкой журнала клиента и ее сведениями.Customer_Id будет предоставлен приложением при использовании хранимой процедуры.
2.Иметь старое и новое значение - Мой первоначальный план состоял в том, чтобы включить только последнее, так как я могу ссылаться на его старое значение с новым значением из строки перед ним, но сохранение старого и нового значения казалось более разумным, сложным.
3.Используйте отдельную базу данных для журнала / 4. Внешние ключи - Вероятно, это моя главная проблема, если я решу использовать отдельную базу данных для таблицы аудита, то я не смогу настроить внешние ключи для вовлеченного клиента и сотрудника..
Я создал макет с результатом таблицы основных данных, который будет отображаться в приложении wpf для отображения журнала администратору, и очень хотел бы, чтобы вы подумали о возможных проблемах (такжетаблица сотрудников, но я забыл ее поставить):
https://ibb.co/dheaNK
Вот несколько полезных сведений:
База данных будет находиться вместе с приложением wpf, которое является одним компьютером.
Количество клиентов будет меньше 1000.
Количество штатных сотрудников составит 3.
Количество администраторов составит 2.