I got it to work by doing this:
declare @sql nvarchar (max)
declare @server varchar(64)
declare @db varchar(64)
declare @table varchar(64)
select @server = quotename(parsename('[server].j3688802s.dbo.sample_web', 4))
select @db = parsename('[server].j3688802s.dbo.sample_web', 3)
select @table = parsename('[server].j3688802s.dbo.sample_web', 1)
print (@server)
print (@db)
print (@table)
set @sql = 'Select Stuff((SELECT '', '' + quotename(column_name) AS [text()]
FROM
(SELECT column_name FROM ' + @server + '.' + @db + '.information_schema.columns
where table_name = ''' + @table + '''
) x
For XML PATH ('''')),1,1,'''')'
print (@sql)
exec sp_executesql @sql, N'@sql nvarchar(max)', @sql print (@sql)
I've never used sp_executesql before. So, I'll experiment with FOR XML, until I run into it truncating column lists.
Thanks guys!