SQL Server: Cómo buscar columnas en tablas

Chistes SQL

A SQL query 

goes into a bar,

walks up to two

tables and asks, 

“Can I join

you?

Cuando una base de datos empieza a crecer y tiene cientos de tablas y cada una de esas tablas tiene otras cuantas decenas de columnas, a veces puede ser interesante saber en que tabla se encuentra cierta columna.

Para ello tenemos las tablas de sistema SysObjects y SysColumns que albergan esa útil información.

Por ejemplo con esta sencilla consulta podemos saber que tablas contienen la columna UserId:

SELECT
     SC.name ColumnName,
     so.name TableName
FROM SysColumns SC
INNER JOIN SysObjects so on SC.ID = SO.ID
WHERE
     SO.[Type] = ‘U’
     AND SC.[name] = ‘UserId’
ORDER BY SC.[name]

Si queréis saber más información sobre SysObjects o SysColumns, Microsoft tiene una documentación fantástica al respecto: SysObjects  SysColumns

Hay muchas más tablas sys en SQL Server, pero si queréis saber más lo dejo en vuestras manos que tan bien saben usar Google.

Un saludor.

 

También te podría gustar...

Deja un comentario

Tu dirección de correo electrónico no será publicada.