Ver Mensaje Individual
  #4  
Antiguo 16-08-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Reputación: 30
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por Al González Ver Mensaje
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.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/

Última edición por jhonny fecha: 16-08-2007 a las 18:52:08. Razón: Organizar un poco el codigo SQL
Responder Con Cita