C'è un modo per ottenere tutte le tabelle che hanno chiavi esterne in un'altra tabella in Oracle con una query?Come ottenere tutte le tabelle che hanno FK su un'altra tabella?
5
A
risposta
12
Ecco a good article con una risposta:
select owner,constraint_name,constraint_type,table_name,r_owner,r_constraint_name
from all_constraints
where constraint_type='R'
and r_constraint_name in (select constraint_name from all_constraints
where constraint_type in ('P','U') and table_name='TABLE_NAME');
1
Supponendo che le tabelle sia il padre e figlio sono nello stesso schema di effettuare le seguenti operazioni:
select t1.table_name child_table, t1.constraint_name, t2.table_name parent_table
from user_constraints t1, user_constraints t2
where t1.r_constraint_name = t2.constraint_name
Nota che r_constraint_name è popolato solo per FK (digita "R"), quindi l'auto join restituisce solo le informazioni di interesse
0
se conosciamo la chiave genitore, solo la risposta di juan modificata con gli impiegati tabl e
select *
from user_constraints
where R_CONSTRAINT_NAME='EMP_EMP_ID_PK'
and constraint_type='R'
Problemi correlati
- 1. Elimina tutte le righe di tutte le tabelle che non sono più utilizzate in nessuna relazione FK
- 2. Ricerca di tutte le tabelle correlate su una tabella data
- 3. Come disabilitare i vincoli per tutte le tabelle e attivarlo?
- 4. ActiveRecord - come ottenere tutte le colonne di tabelle unite
- 5. ORMLite ripristina tutte le tabelle
- 6. Query per ottenere tutte le istruzioni CREATE delle tabelle MySql
- 7. Alter tutte le tabelle nel database
- 8. Come troncare tutte le tabelle utente?
- 9. Psql elenca tutte le tabelle
- 10. H2 - Come troncare tutte le tabelle?
- 11. Ottieni tutte le proprietà che hanno contrassegnato determinati attributi
- 12. Imposta IDENTITY_INSERT OFF per tutte le tabelle
- 13. Come ottenere il layout della tabella senza utilizzare le tabelle?
- 14. Datatables, come associare l'evento su tutte le righe della tabella
- 15. Usa tablediff per confrontare tutte le tabelle
- 16. Come trovare tutte le tabelle che hanno chiavi esterne che fanno riferimento a table.column e hanno valori per quelle chiavi esterne?
- 17. Oracle aggiorna manualmente le statistiche su tutte le tabelle
- 18. Elenco di tutte le tabelle nel database
- 19. Come copiare in profondità un set di dati e modificare i riferimenti FK al punto su tutte le copie?
- 20. Come eliminare tutte le tabelle utente?
- 21. mysql che separa le tabelle
- 22. Come eliminare tutte le tabelle vuote in SQLite?
- 23. Che cos'è il comando django per cancellare tutte le tabelle?
- 24. Ottieni tutte le tabelle e tutte le colonne da un database odbc
- 25. Come ottenere tutte le femmine?
- 26. Tutte le nuove directory hanno 777 autorizzazioni
- 27. Come bloccare tutte le tabelle in un mysql db?
- 28. come ottenere il nome di tutte le tabelle nel database sqlCE?
- 29. come mysql_fetch_array su tabelle unite, ma le colonne hanno lo stesso nome
- 30. Modificare le regole di confronto di tutte le colonne di tutte le tabelle in SQL Server
Non capisco la tua domanda. Forse potresti ribadirlo o offrirti un esempio? – tpdi