From 38bf832cb34329fd669406aaab2e9646db6a5b25 Mon Sep 17 00:00:00 2001 From: Noam Sturmwind Date: Fri, 3 Jan 2020 15:23:08 -0500 Subject: [PATCH 1/2] Add option to cast XML results as nvarchar(max) in order to work with sqlcmd on Linux --- Source/Run_Methods.sql | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Source/Run_Methods.sql b/Source/Run_Methods.sql index f11f1b489..08115fb4a 100644 --- a/Source/Run_Methods.sql +++ b/Source/Run_Methods.sql @@ -526,7 +526,11 @@ BEGIN END; GO +-- @CastToNvarchar is for use with sqlcmd in order to +-- capture the full output. +-- e.g. sqlcmd -y0 -Q "EXEC tSQLt.XmlResultFormatter @CastToNvarchar=1" CREATE PROCEDURE tSQLt.XmlResultFormatter + @CastToNvarchar int = 0 AS BEGIN DECLARE @XmlOutput XML; @@ -735,7 +739,14 @@ BEGIN FOR XML EXPLICIT ); - EXEC tSQLt.Private_PrintXML @XmlOutput; + If @CastToNvarchar = 1 + BEGIN + SELECT CAST(@XmlOutput AS nvarchar(max)) + END + ELSE + BEGIN + EXEC tSQLt.Private_PrintXML @XmlOutput; + END END; GO From 8263bb9312ab6f6844d6e99c886e64f19698b217 Mon Sep 17 00:00:00 2001 From: Noam Sturmwind Date: Wed, 8 Jan 2020 12:45:20 -0500 Subject: [PATCH 2/2] Change to use bit parameter --- Source/Run_Methods.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Run_Methods.sql b/Source/Run_Methods.sql index 08115fb4a..05378e23f 100644 --- a/Source/Run_Methods.sql +++ b/Source/Run_Methods.sql @@ -530,7 +530,7 @@ GO -- capture the full output. -- e.g. sqlcmd -y0 -Q "EXEC tSQLt.XmlResultFormatter @CastToNvarchar=1" CREATE PROCEDURE tSQLt.XmlResultFormatter - @CastToNvarchar int = 0 + @CastToNvarchar bit = 0 AS BEGIN DECLARE @XmlOutput XML;