【问题标题】:Using multiple textboxes to search database Asp.net使用多个文本框搜索数据库 Asp.net
【发布时间】:2018-06-26 15:01:49
【问题描述】:

我有一个使用文本框从数据库中提取数据的存储过程。但是,我添加了另一个文本框,它也可以为他们提供另一个选项来提取相同的数据。用户可以使用身份证号或地址进行搜索。但是假设我在 id 文本框中输入数据并将地址文本框留空,它会拉出所有记录;不是基于输入的身份证号码的记录;但是,如果我将 id 文本框留空并输入地址文本框,它会返回所需的一条记录。

存储过程

select id, name, age, address, telephone where 
  WHERE id= @id
  OR ISNULL(@id, '') = '' and address= @address
  OR ISNULL(@address, '') = ''

【问题讨论】:

    标签: c# sql-server stored-procedures


    【解决方案1】:

    你需要括号:

    SELECT id, name, age, address, telephone 
    WHERE ( ISNULL(@id, '') = '' AND ISNULL(@address, '') = '' )
      OR  ( ISNULL(@id, '') = '' AND address = @address )
      OR  ( ISNULL(@address, '') = '' AND id = @id )
      OR  ( id = @id AND address = @address )
    

    【讨论】:

    • 我试过你的答案;但是,如果我输入相应的 ID 和地址。它不返回任何结果
    • 感谢您在编辑之前得到,但仍然感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 2014-03-27
    • 1970-01-01
    • 2012-06-05
    • 1970-01-01
    • 2022-10-23
    • 1970-01-01
    相关资源
    最近更新 更多