我想到的办法就是把TEXT类型做为输入参数,然后再添加若干个NVARCHAR类型的数据做为输入参数,比如:
create procedure text_test
@sql text,
@test1 nvarchar(4000),
@test2 nvarchar(4000),
@test3 nvarchar(4000),
as
begin
set @sql = @test1 + ' union ' + @test2 + ' union '+@test3
end
虽然TEXT类型不支持ADD等操作,但是还是支持付值操作的。@sql text,
@test1 nvarchar(4000),
@test2 nvarchar(4000),
@test3 nvarchar(4000),
as
begin
set @sql = @test1 + ' union ' + @test2 + ' union '+@test3
end
所以如果有个很大的超过4000长度的SQL要传给存储过程操作,最好分掉几段比较好,嘿嘿。需求不同可能操作就不一样,