Generación y ejecución de TSQL auto-generado para una gran cantidad tablas en SQL Server

Imagen de JuanPLG

Hola como están!, a continuación les detallo como deberían auto-generarse las sentencias para una cantidad importante de tablas, por ej: 7000 tablas. El script que les presento, pueden ejecutarlo desde una ventana de ‘command shell’, donde a través de un archivo del tipo ‘cmd’, se llama a un script ‘sql’, donde la salida del mismo es el script final a ejecutar. En este caso solo realizaremos un conteo de registros para todas las tablas de usuario.

Script: SelectT.sql

SET QUOTED_IDENTIFIER OFF
PRINT 'BEGIN TRAN'
PRINT 'SET QUOTED_IDENTIFIER ON'
SET NOCOUNT ON
SELECT 'SELECT COUNT(*) FROM '+name+';' FROM sysobjects WHERE xtype ='U'
ORDER BY name
PRINT 'COMMIT TRAN'
PRINT 'GO'
GO

Script: miarchivo.cmd

osql -iSelectT.sql -h1 -oSelectT-2.sql -d%1 -E
osql -iSelectT-2.sql -h1 -oSelectT-2.out -d%1 -E

Ej: miarchivo.cmd mibase

Nota: Cabe aclarar que pueden utilizarlo tanto para las versiones de SQL Server 70, 2000 y 2005.

Bueno, hoy fue cortito, pero espero les sirva.

Abrazo virtual a todos !!!.

Links relacionados:

Automatizar informe de cardinalidad sobre 15000 tablas
http://www.todosql.com/blog/200704/automatizar-informe-de-cardinalidad-s...