Oracle - Referencias a tablas.Urgente

 
Vista:

Referencias a tablas.Urgente

Publicado por blanca (3 intervenciones) el 28/03/2001 14:43:40
necesito saber las refencias de unas tablas a otras, creo que están en la dba_constraints, pero como no tengo los nombre, me resulta casi imposible, ¿habría alguna forma de hacer un listado de las referencias que se hacen de unas tablas a otras? Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Referencias a tablas.Urgente

Publicado por oracleadicto (4 intervenciones) el 29/03/2001 08:57:42
Hola.

Tienes toda la información en la tabla dba_constraints. Si haces un desc de la misma verás en 8.1.5:
OWNER
CONSTRAINT_NAME
CONSTRAINT_TYPE
TABLE_NAME
SEARCH_CONDITION
R_OWNER
R_CONSTRAINT_NAME
DELETE_RULE
STATUS
DEFERRABLE
DEFERRED
VALIDATED
GENERATED
BAD
RELY
LAST_CHANGE

Te interesarán dos consultas
1/ ¿Qué foreign keys tengo contra otras tablas?
Select constraint_name,r_owner,r_constraint_name
from dba_constraints
where owner = xxxx and
table_name = yyyy and
constraint_type = 'R';

Aquí me muestra las fk's y la primary key contra la que apuntan. Podrías hacer un join para que te muestre ya de paso la tabla propietaria de la primary key.

2/ ¿Qué tablas tienen fk contra mi primary key?.
Select owner, table_name, constraint_name
from dba_constraints
where r_owner = xxxxx and
r_constraint_name = yyyy (mi primary key)
and constraint_type = 'R'

Aquí también podrías hacer un join para no tener que buscar de antemano tu primary key.

Un saludo.
--------------------------------------------------
Descubre las estructuras y la memoria de oracle en: http://www.zunda.net
--------------------------------------------------
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar