34,838
社区成员




String sql = "Select isnull(aa,'') aa from tb";
declare @sql varchar(8000)
@sql='Select isnull(aa,'''') aa from tb'
exec sp_executesql @sql
create table tb(ID int, ACCNO char(5))
insert into tb values(1, '8888')
insert into tb values(2, '8888')
insert into tb values(3, '8888')
insert into tb values(4, '8888')
insert into tb values(5, '7777')
insert into tb values(6, '7777')
insert into tb values(7, '7777')
insert into tb values(8, '7777')
insert into tb values(9, '7777')
go
create proc test
@ss varchar(100)
as
begin
declare @s varchar(1000)
set @s = 'select * from ('+replace(@ss,'''','''''')+') a'
exec (@s)
end
go
declare @s varchar(1000)
set @s = 'select isnull(accno,'') as c from tb'
exec test @s
drop proc test
drop table tb
/*
c
-----
8888
8888
8888
8888
7777
7777
7777
7777
7777
(所影响的行数为 9 行)
*/
declare @sql varchar(8000)
@sql='Select isnull(aa,char(39)+char(39)) aa from tb'
exec sp_executesql @sql