Skip to content

Commit ea06ce7

Browse files
committed
Add PRINT xml magic
1 parent c2b9c41 commit ea06ce7

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

Scripts/Find_SQL_Server_Integer_Columns_to_Make_Skinnier.sql

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
<issues>No</issues>
66
<author>Konstantin Taranov</author>
77
<created>2019-07-25</created>
8-
<modified>2019-08-14 by Konstantin Taranov</modified>
9-
<version>1.0</version>
8+
<modified>2019-08-15 by Konstantin Taranov</modified>
9+
<version>1.1</version>
1010
<sourceLink>https://github.com/ktaranov/sqlserver-kit/blob/master/Scripts/Find_SQL_Server_Integer_Columns_to_Make_Skinnier.sql</sourceLink>
1111
<originalLink>https://www.mssqltips.com/sqlservertip/6107/find-sql-server-integer-columns-to-make-skinnier/</originalLink>
1212
</documentation>
@@ -39,15 +39,15 @@ DECLARE @src bigint = 2;
3939
cols AS
4040
(
4141
SELECT t.[object_id],
42-
[schema] = s.name,
43-
[table] = t.name,
42+
[schema] = s.name,
43+
[table] = t.name,
4444
[column] = QUOTENAME(c.name),
4545
[type] = styp.name + COALESCE(' (alias: ' + utyp.name + ')', ''),
46-
c.is_nullable,
46+
c.is_nullable,
4747
trgtyp.seq,
48-
trgtyp.type_id,
48+
trgtyp.type_id,
4949
trgtype = trgtyp.[type],
50-
savings = srctyp.bytes - trgtyp.bytes,
50+
savings = srctyp.bytes - trgtyp.bytes,
5151
trgtyp.minval,
5252
trgtyp.maxval,
5353
[rowcount] = (SELECT SUM([rows]) FROM sys.partitions
@@ -96,4 +96,10 @@ SET @sql += N'
9696

9797
--PRINT(@sql);
9898

99+
DECLARE @xml xml = (SELECT @sql FOR XML path(''));
100+
SET @sql =
101+
REPLACE(REPLACE(REPLACE(REPLACE(CONVERT(nvarchar(MAX), @xml, 1), '&#x0D;', CHAR(13)), '&gt;', '>'), '&lt;', '<'), '&amp;', '&');
102+
/* Enable in SSMS option Tools->Options->Query Results->SQL Server->Results to Grid->Return CR/LF on copy or save */
103+
SELECT @sql AS SQL_Print;
104+
99105
EXEC sys.sp_executesql @sql;

0 commit comments

Comments
 (0)