¿Alguien sabe cómo puedo ver cuáles son las claves externas & principales en una tabla?SQL Server 2008: averiguar la clave principal/externa en la tabla?
EDIT: Gracias por todas las respuestas. Estaba buscando una consulta SQL para hacer eso. En este momento estoy jugando con la escritura de una herramienta que me puede mostrar todas las tablas de un DB y mostrar las columnas. Me gustaría mostrar también cuáles de las claves son claves principales.
Esta es la forma en que leí el Catálogo Tabla:
const string sqlSelectTable = "SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE " +
"FROM INFORMATION_SCHEMA.TABLES " +
"WHERE TABLE_TYPE = 'BASE TABLE' " +
"ORDER BY TABLE_TYPE,TABLE_NAME";
y esto es cómo consigo las Informaciones sobre una columna:
const string sqlSelectTable =
"SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH " +
"FROM INFORMATION_SCHEMA.COLUMNS " +
"WHERE (TABLE_NAME = @TABLE_NAME) " +
"ORDER BY ORDINAL_POSITION";
tendría que crear una Unión interna por lo ver cuales de las Columnas son la clave principal?
Saludos
n que no funciona. Devuelve todos los índices que ha creado. – Craig
@Craig: consulta n. ° 1 ** solo ** devuelve claves primarias - la consulta n. ° 2 devuelve ** solo ** claves foráneas - o ¿qué obtienes? –