espero ter ajudado informe apenas o nome da tabela na variável @tabela --09/02/2012 @THIAGOTHAMIEL / WWW.THIAGOTHAMIEL.COM
DECLARE @TABELA VARCHAR(200)
DECLARE @QTDCOLUNA INT
DECLARE @STRINGCOLUNA VARCHAR(8000)
DECLARE @COL VARCHAR(200)
SET @TABELA = 'INFORME O NOME DA TABELA' -- NOME DA TABELA
SET @QTDCOLUNA = (SELECT Max(ORDINAL_POSITION)
FROM INFORMATION_SCHEMA.COLUMNS CL
WHERE CL.TABLE_NAME = @TABELA)
DECLARE @INDEX INTEGER
SET @INDEX = 0
WHILE @INDEX < @QTDCOLUNA
BEGIN
SET @COL = (SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS CL
WHERE CL.TABLE_NAME = @TABELA
AND ORDINAL_POSITION = @INDEX)
IF @STRINGCOLUNA IS NULL
BEGIN
SET @STRINGCOLUNA = @COL
END
ELSE
BEGIN
SET @STRINGCOLUNA = ( @STRINGCOLUNA + ',' + @COL )
END
SET @INDEX = @INDEX + 1
END
EXEC ( 'SELECT ' + @STRINGCOLUNA + ' FROM ' + @TABELA)