declare @tabla as varchar(1000) set @tabla = 'nombre_tabla' SELECT so.name as ForeignTableName, sc.name as ColumnName, s.name + '.' + PKT.name as PrimaryTableName from sysreferences r inner join sysconstraints c on r.constid = c.constid inner join sys.tables pkt on PKT.object_id = r.rkeyid inner join sys.columns sc on sc.column_id = r.fkey1 and r.fkeyid = sc.object_id inner join sys.schemas s on s.schema_id=pkt.schema_id inner join sys.tables so on r.fkeyid = so.object_id where so.is_ms_shipped = 0 and ( pkt.object_id = object_id(@tabla) or r.rkeyid = object_id(@tabla)) order by so.name, sc.nameesto generaría un resultado como el siguiente
13 de enero de 2011
Obtener las Relaciones FK de una tabla
Desde el siguiente enlace encontré como obtener las FK de todas las tablas de una base de datos, realizándole un mínimo cambio lo ajusté para que obtuviese solo las FK's de alguna tabla en particular
Etiquetas:
Bases de Datos,
SQL Server 2008,
TSQL
No hay comentarios:
Publicar un comentario