いくつかの SQL クエリをテーブルのvarchar
列に格納します。次に、Birts レポート データ セットでそれらを実行します。問題ありませんが、SQL クエリを確認する必要がある場合がありますが、SQL エディターからコピーすると、クエリが 1 行で取得されます。取得方法を知りたいです。テーブルに挿入される前のように、その列をインデントします。
質問する
89 次
3 に答える
1
私は過去にこのツールを使用しましたが、非常にうまく機能します。
于 2013-06-04T15:38:01.827 に答える
0
このspはT-SQL_Exceeding_the_8000_Byte_Limit_of_the_PRINT_Statementで見つけました
-- Works around the 4000/8000 character limit of the print statement
CREATE PROCEDURE dbo.LongPrint( @string nvarchar(max) )
AS
SET NOCOUNT ON
set @string = rtrim( @string )
declare @cr char(1), @lf char(1)
set @cr = char(13)
set @lf = char(10)
declare @len int, @cr_index int, @lf_index int, @crlf_index int, @has_cr_and_lf bit, @left nvarchar(4000), @reverse nvarchar(4000)
set @len = 4000
while ( len( @string ) > @len )
begin
set @left = left( @string, @len )
set @reverse = reverse( @left )
set @cr_index = @len - charindex( @cr, @reverse ) + 1
set @lf_index = @len - charindex( @lf, @reverse ) + 1
set @crlf_index = case when @cr_index < @lf_index then @cr_index else @lf_index end
set @has_cr_and_lf = case when @cr_index < @len and @lf_index < @len then 1 else 0 end
print left( @string, @crlf_index - 1 )
set @string = right( @string, len( @string ) - @crlf_index - @has_cr_and_lf )
end
print @string
それは非常にうまく機能します..
于 2013-06-04T16:17:00.577 に答える