--不知是不是这个意思 --测试数据 CREATE TABLE [PTL_CMT_Material]([sitem_itemno] VARCHAR(50)) INSERT [PTL_CMT_Material] SELECT '11-040002200' UNION ALL SELECT '11-034068041' UNION ALL SELECT '14-124071343' UNION ALL SELECT '14-124000263' --存储过程 CREATE PROC p_test @ItemNo varchar(10)='' AS SET NOCOUNT ON DECLARE @sql varchar(8000) SET @sql='SELECT * FROM [PTL_CMT_Material] WHERE 1=1' IF @ItemNo <> '' SET @sql=@sql+' AND [sitem_itemno]='''+@ItemNo+'''' EXEC(@sql) GO --执行 DECLARE @ItemNo VARCHAR(50) SET @ITEMNO='' --@ItemNo为'' EXEC P_TEST @ITEMNO
--测试数据
CREATE TABLE [PTL_CMT_Material]([sitem_itemno] VARCHAR(50))
INSERT [PTL_CMT_Material] SELECT '11-040002200'
UNION ALL SELECT '11-034068041'
UNION ALL SELECT '14-124071343'
UNION ALL SELECT '14-124000263'
--存储过程
CREATE PROC p_test
@ItemNo varchar(10)=''
AS
SET NOCOUNT ON
DECLARE @sql varchar(8000)
SET @sql='SELECT * FROM [PTL_CMT_Material] WHERE 1=1'
IF @ItemNo <> ''
SET @sql=@sql+' AND [sitem_itemno]='''+@ItemNo+''''
EXEC(@sql)
GO
--执行
DECLARE @ItemNo VARCHAR(50)
SET @ITEMNO='' --@ItemNo为''
EXEC P_TEST @ITEMNO