Проблема в том, что Oracle позволяет нам использовать одну последовательность для заполнения столбцов в нескольких таблицах. Сценарии, где это может быть желательно, включают реализации супертипа / подтипа.
Вы можете использовать зависимости в словаре данных для определения отношений. Например, если вы используете триггеры для присвоения значений, этот запрос поможет вам:
select ut.table_name
, ud.referenced_name as sequence_name
from user_dependencies ud
join user_triggers ut on (ut.trigger_name = ud.name)
where ud.type='TRIGGER'
and ud.referenced_type='SEQUENCE'
/
Если вы используете PL / SQL, то вы можете написать что-то похожее для TYPE in ('PACKAGE BODY', 'PROCEDURE', 'FUNCTION')
, хотя вам все равно потребуется некоторый просмотр исходного кода для назначения таблиц и последовательностей, когда у вас есть несколько обращений.