Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/09/2005, 08:40
Avatar de Linterns
Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 5 meses
Puntos: 11
Puedes verificar en la Tabla Administrativa USER_CONSTRAINTS en donde tiene algunas columnas bastante interesantes tales como CONSTRAINT_NAME, CONSTRAINT_TYPE donde P refiere a (Primary key) llave primaria y R es los referente a (Foreign key) llave foranea.

Si deseas ver mas columnas simplemente teclea la sigueinte sentencia

Código:
DESCRIBE USER_CONSTRAINTS
tambien puedes utilizar puede utilizar la consuklta de USER_CONS_COLUMNS para encontrar el COLUMN_NAME y la POSICIÓN para el constrainst CONSTRAINT_NAME que te interesa como por ejemplo

Código:
select column_name, position, constraint_name from User_cons_columns;
Lo anterior lo puedes filtar por TABLE_NAME = "nombre tabla a buscar"

Un ejemplo seria el siguiente:
Código:
select constraint_name, constraint_type 
from user_constraints 
where table_name='MITABLABUSCADA';
En este caso me ha dado lo siguiente
Código:
CONSTRAINT_NAME                C
------------------------------ -
SYS_C001400                    P
SYS_C001401                    R
SYS_C001401                    R
teniendo el nombre del Contrainst primario (SYS_C001400) ya puedes realizar la select de la vista USER_CONS_COLUMNS filtrada por CONSTRAINT_NAME="SYS_C001400"
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***

Última edición por Linterns; 23/09/2005 a las 08:47