GetInventTable组装SQL语句使用通配符
USE [DEV]
GO
/****** Object: StoredProcedure [dbo].[GetInventTable] Script Date: 12/22/2011 14:51:56 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[GetInventTable]
@itemId varchar(500) = '',
@ItemName varchar(500) = '',
@CNItemName varchar(500) =''
as
begin
declare @isWhere bit;
declare @strSQL varchar(256);
set @isWhere = 0;
set @strSQL = 'select * from inventTable ';
if (@itemId ='') and (@ItemName ='') and (@CNItemName ='')
begin
exec (@StrSQL);
return;
end
if not(@itemId ='')
begin
exec NJ_AddWhere @strSQL out,@isWhere out;
set @strSQL = @strSQL + 'itemid ' + dbo.FormatSQL(@itemId) ;
--exec (@strSQL);
--return;
end
if not(@ItemName ='')
begin
exec NJ_AddWhere @strSQL out,@isWhere out;
set @strSQL = @strSQL + 'ItemName ' + dbo.FormatSQL(@ItemName) ;
--exec (@strSQL);
--return;
end
if not(@CNItemName ='')
begin
exec NJ_AddWhere @strSQL out,@isWhere out;
set @strSQL = @strSQL + 'CNItemName' + dbo.FormatSQL(@CNItemName);
--exec (@strSQL);
--return;
end
exec (@strSQL)
end