Try this option -
Solution No. 1 (works with any table structure):
Query:
SET NOCOUNT ON; DECLARE @SQL NVARCHAR(MAX) , @TableName SYSNAME = 'Person.Address' SELECT @SQL = 'SELECT STUFF((SELECT CHAR(10) + ' + STUFF(( SELECT [text()] = CHAR(10) + '+ CAST(' + c.name + ' AS CHAR(' + CAST( CASE WHEN c.max_length = -1 OR TYPE_NAME(c.system_type_id) = 'uniqueidentifier' THEN 150 ELSE (c.max_length / 2) + 5 END AS VARCHAR(10)) + '))' FROM sys.columns c WHERE c.[object_id] = OBJECT_ID(@TableName) AND c.user_type_id = c.system_type_id FOR XML PATH('')), 1, 2, ' ') + ' FROM ' + @TableName + ' FOR XML PATH('''')), 1, 1, '''')' DECLARE @temp TABLE (t VARCHAR(MAX)) INSERT INTO @temp EXEC sys.sp_executesql @SQL DECLARE @SQL2 VARCHAR(MAX) SELECT @SQL2 = t FROM @temp PRINT @SQL2
Output:
66 4775 Kentucky Dr. Unit E Monroe 79 98272 462876DD-B30C-4E9B-A0AD-67A0E14986C6 Jun 27 20 83 5379 Treasure Island Way
Solution No. 2:
Query:
DECLARE @ObjectID INT = OBJECT_ID('[Sales].[SalesTaxRate]') DECLARE @Text NVARCHAR(MAX) ;WITH cte AS ( SELECT txt = REPLACE(txt, '<t ' + c.name + '="', CHAR(13)), a = 2 FROM sys.columns c CROSS JOIN ( SELECT txt = ( SELECT [SalesTaxRateID] , [StateProvinceID] , [TaxType] , [TaxRate] , [rowguid] , [ModifiedDate] FROM [Sales].[SalesTaxRate] t FOR XML AUTO ) ) t WHERE c.[object_id] = @ObjectID AND c.column_id = 1 UNION ALL SELECT REPLACE(txt, '" ' + c.name + '="', CHAR(9)), a + 1 FROM cte JOIN sys.columns c ON c.[object_id] = @ObjectID AND c.column_id = a ) SELECT TOP 1 @Text = STUFF(REPLACE(txt, '"/>', ''), 1, 1, '') FROM cte ORDER BY a DESC OPTION (MAXRECURSION 100) PRINT @Text
Output:
1 1 1 14.0000 683DE5DD-521A-47D4-A573-06A3CDB1BC5D 2002-06-01T00:00:00 2 57 1 14.2500 05C4FFDB-4F84-4CDF-ABE5-FDF3216EA74E 2002-06-01T00:00:00 3 63 1 14.2500 D4EDB557-56D7-403C-B538-4DF5E7302588 2002-06-01T00:00:00 4 1 2 7.0000 F0D76907-B433-453F-B95E-16FCE73B807A 2002-06-01T00:00:00 10 41 3 7.0000 383D465B-E1D1-492A-83F3-AB3E9CBF3282 2002-06-01T00:00:00 23 36 1 6.7500 1753D75F-8357-4497-BC92-543F17BBF514 2002-06-01T00:00:00 31 14 3 17.5000 ABD185A9-5367-44E1-8A6E-71D083943F3C 2002-06-01T00:00:00
source share