2
    alter PROCEDURE K_HM_SearchFarmeragentDet
@Type varchar(50),@farmername varchar(50)   
AS
BEGIN

    SET NOCOUNT ON;
SELECT MHA.sno,MHA.farmername,MHA.referencedby,HMB.Branch,MHA.area,MHA.contactno,MHA.Type from k_Master_AddHatchingFarmer MHA inner join
 K_HM_Branch HMB on MHA.Branch=HMB.Sno where farmername like @farmername+'%'  order by farmername

END
GO

我已经编写了这样的程序来搜索基于农民姓名的数据,但我想根据农民姓名以及一个下拉列表类型搜索数据。type 包含两个值 farmer 和 agent。如果我只想搜索农民,我该如何编写程序,请帮助我...

4

2 回答 2

2

试试这个,如果你没有从下拉列表中选择任何东西,请确保将空值传递给存储过程

ALTER PROCEDURE K_HM_SearchFarmeragentDet
@Type varchar(50),@farmername varchar(50)   
AS
BEGIN
SET NOCOUNT ON;
SELECT MHA.sno,MHA.farmername,MHA.referencedby,HMB.Branch,MHA.area,MHA.contactno,MHA.Type from k_Master_AddHatchingFarmer MHA inner join
 K_HM_Branch HMB on MHA.Branch=HMB.Sno 
where farmername like @farmername+'%'  
AND MHA.Type = ISNULL(@Type, MHA.Type)
order by farmername
END
GO
于 2013-10-25T05:49:44.713 回答
2
  alter PROCEDURE K_HM_SearchFarmeragentDet
  @Type varchar(50),@farmername varchar(50)   
  AS
  BEGIN

  SET NOCOUNT ON;
  SELECT MHA.sno,MHA.farmername,MHA.referencedby,HMB.Branch,MHA.area,MHA.contactno,MHA.Type from k_Master_AddHatchingFarmer MHA inner join
  K_HM_Branch HMB on MHA.Branch=HMB.Sno where farmername like @farmername+'%' and    Type=@Type order by farmername

  END
  GO

尝试这个

于 2013-10-25T06:03:50.377 回答