возможности аудита может быть сделано на уровне базы данных, поэтому вам не нужно осуществлять аудит e ver again/(foreach приложение, которое обращается к коду записи базы данных, чтобы проверить то же самое - не имеет большого смысла).
Что вы делаете, создайте таблицу, точно такую же, как производственная таблица с пост или префикс, и добавьте дополнительные поля в соответствии с вашими потребностями. Для каждой из ваших хранимых процедур добавьте параметр (ы) & для каждой таблицы аудита, добавьте столбцы (столбцы); отметку времени, имя пользователя (из приложения) и действие (DELETE, UPDATE, READ, CREATE или что вам нужно, чтобы описать, что произошло с записью).
Затем перед CRUD выберите из таблицы и вставьте в таблицу аудита с данными операции/действий & дополнительных параметров.
Это также позволяет обеспечить дополнительную безопасность при запросе данных, поскольку каждый раз, когда приложение обращается к базе данных для выполнения операции, оно проверяет CREATE, READ, UPDATE или DELETE. С обязательным параметром пользователя он также может дойти до степени, чтобы проверить, имеет ли пользователь доступ к записи, проверяет, существует ли пользователь даже и имеет ли определенные привилегии для выполнения действия над записью или объектом.
Единственное изменение в коде - это дополнительные параметры, переданные в базу данных, в соответствии с вашими конкретными потребностями.
Это решение является агностиком.