... oppure potresti crearti una funzione del tipo...
if exists (select * from sysobjects where name = N'fn_Colonne') drop function fn_Colonne
go
create function fn_Colonne ( @ObjectID int )
returns varchar(8000)
as
begin
declare @ElencoColonne varchar(8000),
@ColName varchar(256)
set @ElencoColonne = ''
declare Columns_cursor cursor read_only
for select name
from syscolumns
where Id = @ObjectID
order by ColOrder
open Columns_cursor
fetch next from Columns_cursor INTO @ColName
while @@fetch_status <> -1
begin
if @@fetch_status <> -2
begin
set @ElencoColonne = @ElencoColonne + ltrim(rtrim(@ColName)) + ', '
end
fetch next from Columns_cursor into @ColName
end
if len(@ElencoColonne) > 1 set @ElencoColonne = left(@ElencoColonne, len(@ElencoColonne) -1)
close Columns_cursor
deallocate Columns_cursor
return @ElencoColonne
end
go
NOTA: questo solo su SQL 2000 ( il 2005 per me è ancora materia oscura ... anzi visto che ci sono lancio un appello all'ottimo Lorenzo per un consiglio spassionato per un libro sul 2005 )