По сути, я использовал Azure Data Studio вместе с его расширением SQL Server Import , который имеет эту функцию для экспорта и импорта файлов .bacpac, как в SSMS: упоминается здесь .
Это кажется, что Вы после 'контролируете'. Oracle имеет встроенную функцию, названную Мелкозернистым аудитом (FGA). Вкратце можно контролировать все или особые условия. То, что действительно прохладно, является Вами, может 'аудит' выбирать, а также транзакции. Простая команда для начала работы с аудитом:
audit UPDATE on SCOTT.EMP by access;
Думайте о нем как о 'триггере' для избранных операторов. Например, Вы создаете политики:
begin
dbms_fga.add_policy (
object_schema=>'BANK',
object_name=>'ACCOUNTS',
policy_name=>'ACCOUNTS_ACCESS'
);
end;
После определения политики, когда пользовательские запросы таблица обычным способом, следующим образом:
select * from bank.accounts;
журнал аудита записывает это действие. Вы видите след путем издания:
select timestamp,
db_user,
os_user,
object_schema,
object_name,
sql_text
from dba_fga_audit_trail;
TIMESTAMP DB_USER OS_USER OBJECT_ OBJECT_N SQL_TEXT
--------- ------- ------- ------- -------- ----------------------
22-OCT-08 BANK ananda BANK ACCOUNTS select * from accounts
В подобном вопросе (Как к Действию Базы данных аудита без Проблем Производительности и Масштабируемости?) принятый ответ упоминает контроль трафика базы данных с помощью сниффера сетевого трафика в качестве интересной альтернативы.
Если бы Вы просто заинтересовали знанием, на что данные были похожи в недалеком прошлом, то Вы могли просто использовать функциональность запроса ретроспективного кадра Оракулов для запросов данных в течение определенного времени в прошлом. Как далеко в прошлом зависит от того, сколько дискового пространства Вы имеете и сколько действия базы данных, там. Положительная сторона этого решения - то, что автоматически добавляются новые столбцы. Оборотная сторона - то, что Вы не можете запрос ретроспективного кадра мимо ddl операции.
log4plsql является совершенно другой вещью, для входа информации об отладке от МН / SQL
Поскольку, что Вы хотите, Вы должны также.
При оценке по описанию, интересно, не регистрирует ли то, в чем Вы действительно нуждаетесь, механизм, а скорее своего рода Историческую ценность некоторой таблицы. Если это верно, затем возможно, Вы более обеспеченное использование некоторого Временного Проектирования баз данных (использующий поля VALID_FROM и VALID_TO). Можно отследить изменения в базе данных с помощью инструментов Oracle LogMiner.
Что касается Ваших сценариев, я быть бы, хранил данные изменений в этом виде схемы:
+----------------------------------------------------------------------------+
| Column Name | Function |
+----------------------------------------------------------------------------+
| Id | PRIMARY_KEY value of the SOURCE table |
| TimeStamp | Time stamp of the action |
| User | User who make the action |
| ActionType | INSERT, UPDATE, or DELETE |
| OldValues | All fields value from source table, seperated by '|' |
| Newvalues | All fields value from source table, seperated by '|' |
+----------------------------------------------------------------------------+
С этим типом регистрирующейся таблицы можно легко определить:
Конечно, этот вид входа не может легко определить все допустимые значения таблицы в отдельном моменте вовремя. Для этого необходимо изменить Вас дизайн таблицы на Временное Проектирование баз данных.