create proc softuse_test_procif
@id int
as
begin
declare @v varchar(50)
if @id=''
begin
select * from [test01].[dbo].[student3];
end
else
begin
select * from [test01].[dbo].[student3] where stud_id=@id;
end
end
exec softuse_test_procif 3
create proc softuse_test_procif1
@id varchar(10) --外面参数
as
begin
declare @v varchar(50)
declare @v1 varchar(150)
declare @v2 varchar(150)
set @v1='select * from [test01].[dbo].[student3] where 1=1 ' --写在 if 外面
if @id=''
begin
exec (@v1)
end
else
begin
set @v1=@v1 +'and stud_id='+@id ;
exec (@v1)
end
end
exec softuse_test_procif1 '3'