venho aqui mais uma vez pedir uma ajuda a você para ver se consigo resolver um probleminha que estou tendo(e realmente estou quebrando a cabeça)
estamos migrando um de nossos sistemas de Oracle para SQL Server, até
ai beleza...
O problema começa na nova base que tem algumas tabelas a mais(como se fossem dicionário de dados)
Em uma delas, preciso cadastras os relacionamentos existentes na base(
veja bem os relacionamento e não criar FK's), nessa tabela eu tenho 4 campos "tabela_pai", "tabela_filha", "campos_mestre", "campos_detalhe"
Muito bem, minha base tem simplesmente mais de 1500 FK's...
Já pensou perder tudo isso de tempo procurando tabelas, vendo seus relacionamentos, etc, etc...
levaria talvez semanas para conseguir montar um script...
bem, eu fiz a seguinte consulta para agilizar esse processo:
--Testem em suas bases Oracle
select c2.table_name TABELAPAI,
c.table_name TABELAFILHA,
c2.column_name CAMPOSMESTRE,
c.column_name CAMPOSFILHOS, u.constraint_name
from user_constraints u,
user_cons_columns c,
user_cons_columns c2
where u.constraint_type = 'R'
and u.owner = c.owner
and u.constraint_name = c.constraint_name
and u.r_owner = c2.owner
and u.r_constraint_name = c2.constraint_name
and u.owner = 'MASTER'
Pensei ter resolvido meu problema de uma vez, fiquei muito contente e tudo mais, porém surgiu um detalhe....
Preciso cadastrar as chaves compostas, ou seja, se tiver dois campos que formam a FK, preciso caadstrá-los no meu dicionário de dados(fazer isso na mesma linha )
ou seja, terei de fazer um trabalho altamente cansativo e repetitivo durante dias e dias até ver tabela por tabela...
este problema eu só estou tendo por causa da chaves compostas,
será que alguém poderia me ajudar a fazer alguma consulta, ou alguma função para que eu possa ter uma tabela que me de os Scripts??
Ou talvez alguma outra forma para mim agilizar este processo???
desde de já obrigado.
Se alguém não entendeu eu explico de outra forma rsrs...