Información de las Tablas en SQL Server 2005/2008
|
En SQL Server 2005 y SQL Server 2008 hay varias funciones para mostrar información de las tablas. No estamos hablando de la data en las tablas, pero información sobre las tablas, o metadatos. Metadatos incluye información como tamaño en disco, información sobre las columnas, información de los índices e información sobre las estadísticas.
sp_help
sp_help nos da información general sobre las tablas. El primer grupo es la fecha de creación y el dueño de la tabla. El segundo grupo nos da información sobre las columnas. Incluye el nombre de la columna, el tipo de data, tamaño, precisión, si se puede usar NULL, y la compaginación(collation.) El tercer grupo nos dice si la tabla tiene una columna de IDENTITY. El cuarto grupo incluye información sobre columnas RowGuidID, o columnas definidas como NEWSEQUENTIALID(). El quinto grupo nos da la ubicación de la tabla en los FileGroups o Grupos de Archivos. El sexto grupo nos da los nombres de los índices, y las claves de los indicies. El último grupo nos da información sobre las restricciones de la tabla, como las claves ajenas, valores defaults y verificaciones.
Ejemplo con Person.Address en AdventureWorks:
sp_help 'Person.Address'
sp_spaceused
sp_spaceused nos muestra el tamaño de la tabla. El tamaño total está compuesto del espacio usado, el espacio reservado, el espacio vacío, y el espacio usado por los índices de la tabla. sp_spacedused también nos muestra la cuenta de las filas en la tabla.
Ejemplo con Person.Address en AdventureWorks:
sp_spaceused 'Person.Address'
sp_helpindex
sp_helpindex muestra información sobre los índices de la tabla. Los resultados son los mismos de sp_help. La información incluye los nombres de los índices, la ubicación de los índices, ya las columnas claves.
Ejemplo con Person.Address en AdventureWorks:
sp_helpindex 'Person.Address'
sp_helpstats
sp_helpstats muestra información sobre las estadísticas creadas en las tablas. La información incluye el nombre de las estadísticas y las claves de las estadísticas.
Ejemplo con Sales.SalesPerson en AdventureWorks:
sp_helpstats 'Sales.SalesPerson'
sys.dm_db_index_usage_stats
Esta vista de sistema (DMV) nos dice cuántas veces se leyeron los índices de una tabla. La tabla puede ser un montón o tener una clave clúster.
Ejemplo con Person.Address en AdventureWorks:
SELECT *
FROM sys.dm_db_index_usage_stats S
where S.object_id = OBJECT_ID('Person.Address')
sirve
Muy buena la información, me resultó muy útil
Si no tienes una herramienta mejor a mano con el propio SQL Server puedes conseguirlo facilmente usando la informacion contenida en la tabla de sistema