Cita:
Empezado por Al González
Normalmente el índice de la llave foránea se llama igual que ésta. Así que, en ese caso, puede hacerse la consulta:
|
Para capturar el nombre del indice, en caso de que sea diferente
Código SQL
[-]Select RC.RDB$Index_Name From RDB$RELATION_CONSTRAINTS RC Where
RC.RDB$Constraint_Name = 'X'
Para capturar el nombre de la tabla,
a la cual hace referencia la llave foranea...
Código SQL
[-]SELECT I.RDB$RELATION_NAME
FROM RDB$REF_CONSTRAINTS RF
INNER JOIN RDB$RELATION_CONSTRAINTS RC ON (RF.RDB$CONST_NAME_UQ = RC.RDB$CONSTRAINT_NAME)
INNER JOIN RDB$INDICES I ON (I.RDB$INDEX_NAME = RC.RDB$INDEX_NAME)
WHERE RF.RDB$CONSTRAINT_NAME = 'X'
Lo que aún no encuentro como hacer es capturar los campos de la tabla,
a los cuales hace referencia la llave foranea.