Как получить список триггеров со списками всех таблиц, которые используются внутри триггеров. Значения
1) триггер, созданный из таблицы
2) таблицы, используемые внутри логики триггера?
Пожалуйста, предоставьте решение в oracle, а также в sql-сервере?Как получить список триггеров со списками всех таблиц, которые используются внутри триггеров
0
A
ответ
2
Вы бы использовать ALL_TRIGGERS
и ALL_DEPENDENCIES
найти все триггеры их в зависимости таблиц. Это: все таблицы, которые СУБД видит зависимыми. Поэтому, когда используется динамический SQL, СУБД слепо, к каким таблицам будет содержаться динамический запрос, и вы их пропустите.
select
t.owner || '.' || t.trigger_name as trigger_name,
t.table_owner || '.' || t.table_name as table_name,
(
select
listagg(d.referenced_owner || '.' || d.referenced_name, ', ')
within group (order by d.referenced_owner, d.referenced_name)
from all_dependencies d
where d.owner = t.owner
and d.name = t.trigger_name
and d.type = 'TRIGGER'
and d.referenced_type = 'TABLE'
and not (d.referenced_owner = t.table_owner and d.referenced_name = t.table_name)
) as other_tables
from all_triggers t;
Это для Oracle (я не знаю, как же это делается в SQL Server. Я думаю, что это будет очень похоже. SQL Server тоже будет иметь системные таблицы, вы могли бы получить эту информацию от).
1
В Oracle попытаться ниже запрос, чтобы получить желаемый результат
SELECT TRIGGER_NAME,TABLE_NAME,TRIGGER_TYPE, TRIGGERING_EVENT, LINE, TEXT
FROM USER_TRIGGERS UT, USER_SOURCE US
WHERE UT.TRIGGER_NAME=US.NAME;
Смежные вопросы
- 1. Как получить список таблиц без активных триггеров?
- 2. Каков список всех триггеров Android Init Language?
- 3. Список всех триггеров в базе данных
- 4. Список зашифрованных триггеров
- 5. Список всех триггеров из всех баз данных на одном сервере
- 6. Как просмотреть список таблиц и список триггеров (и последовательностей)?
- 7. Объявление переменных внутри триггеров
- 8. Referencing атрибутов со вставкой триггеров
- 9. Тестирование триггеров со временем обработки
- 10. Список триггеров для каждой таблицы?
- 11. Как собирать информацию из других таблиц внутри триггеров PostgreSQL
- 12. Суммируя список со списками внутри
- 13. Динамическое связывание XForms со значениями вставки триггеров
- 14. Создание триггеров
- 15. как получить список триггеров, зарегистрированных в планировщике кварца
- 16. Как получить список активных триггеров в базе данных?
- 17. Несколько триггеров
- 18. использование триггеров для хранения истории реляционных таблиц
- 19. JQuery Пользовательские события триггеров
- 20. Ruby on Rails - выпадающий список триггеров другой
- 21. Использование getopt триггеров всех случаев в одном
- 22. Выбор значений для переменной внутри триггеров Mysql
- 23. Использование MySQL триггеров
- 24. Странное взаимодействие Поведение триггеров
- 25. Создание триггеров с MySQL
- 26. Выпадающий список триггеров из формулы соответствия?
- 27. Создание триггеров против взглядов
- 28. Преимущества/недостатки использования триггеров MySQL
- 29. Полный список триггеров директивы директивы RTL pragma
- 30. jQuery события триггеров
Надежда ссылка ниже поможет. http://stackoverflow.com/questions/12346914/how-to-find-all-trigger-associated-with-a-table-with-sql-server – Japongskie