Ir al contenido principal

[SQL] Obtener información de tablas

Buenas a todos.

Os propongo una forma rápida de obtener información sobre tablas de vuestra base de datos.
Vamos a ver como recuperar los nombres de las tablas, los campos y las claves foraneas de nuestra base de datos.


Nombre de las tablas de nuestra BBDD

USE MyDatabase
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES

Información de los campos de las tablas

USE MyDatabase
SELECT TABLE_NAME as Tabla, COLUMN_NAME as Campo,
DATA_TYPE as Tipo, CHARACTER_MAXIMUM_LENGTH as Longitud, 
NUMERIC_PRECISION as Precision,NUMERIC_SCALE as Decimales
FROM INFORMATION_SCHEMA.COLUMNS
ORDER BY TABLE_NAME

Información de claves foraneas

SELECT fk.name as FK,
OBJECT_NAME(fk.parent_object_id) AS TableName,
COL_NAME(fc.parent_object_id, fc.parent_column_id) as ColumnName,
OBJECT_NAME(fk.referenced_object_id) as ReferenceTableName,
COL_NAME(fc.referenced_object_id, fc.referenced_column_id) as ReferenceColumnName
FROM sys.foreign_keys as fk
INNER JOIN sys.foreign_key_columns AS fc on fk.OBJECT_ID = fc.constraint_object_id

No hace falta decir que estas sentencias se pueden poner condiciones WHERE para acotar los resultados.

Y por supuesto, si estamos usando Microsoft SQL Server Management Studio, si escribimos el nombre de nuestra tabla a examinar, y pulsamos ALT+F1, obtendremos toda esa información.
Tambien usando la sentencia sp_help MiTabla


Comentarios

Entradas populares de este blog

[VB] - Generar GUID

Esta si es buena... Como se nota que VB es un lenguaje con "solera", es decir, con años pero con robustez. Pero le pasa como al abuelo Cebolleta, tiene experiencia pero para los nuevos tiempos... ains.. le falta algo. Hoy en dia no sabriamos hacer nada sin un buen GUID, sobre todo si lo que queremos es identificar de forma unica y constante algun registro, objeto u otro componente. Usando SQL podemos generar un GUID en un santiamen a traves de la instrucción NEWID() , podemos crear un nuevo GUID en .NET usando la clase GUID.. pero... como lo hacemos con Visual Basic 6? Para empezar, vamos a ver en que se compone un GUID ¿Que es un GUID? Su significado es Globally Unique Identifier, osea Identificador globalmente único. Y su misión es la de proporcionar un identificador, de forma que es practicamente imposible que existan dos iguales en el mundo. Se compone de una palabra de 4 bytes, 3 palabras de 2 bytes y una de 6 bytes. Originalmente fue una idea de Microsoft pa

[.NET] Convertir Latitud y Longitud en Grados - Minutos y segundos

Hola a todos. Esta es una función para convertir un número de posición geográfica en grados, minutos y segundos. Como algunos pocos recordarán,una posición geográfica esta definida por latitud (Norte / Sur) y longitud (Este / Oeste) teniendo como referencia para la longitud el meridiano de Greenwich (Meridiano 0) y para la latitud la linea del Ecuador (Paralelo 0). Por lo que siempre hablaremos de posición " Grados Norte ", o " Grados Este ". Ahora es cuando entra en juego las matemáticas y la trigonometría (he de admitir que me encantan :D ). El hemisferio norte o sur solo tendría 90° Norte o Sur. Por ejemplo, El polo norte está a 90° 0' 0'' N de latitud. La longitud podríamos considerar el 0° 0' 0'' (estamos en el polo norte, por lo que es un solo punto, no hay longitud). En cambio, si nos movemos alrededor de la tierra por la linea de Ecuador, la latitud será 0° 0' 0'' (ni al norte, ni al sur) pero de Este a Oeste nos m