读书人

现在有4个textbox 根据他们的值进行查

发布时间: 2012-01-26 19:40:46 作者: rapoo

现在有4个textbox 根据他们的值进行查询

C# code
用户名<asp:TextBox ID="edtUserID" runat="server"></asp:TextBox>姓名<asp:TextBox ID="edtName" runat="server"></asp:TextBox>警号<asp:TextBox ID="edtPoliceNumber" runat="server"></asp:TextBox>部门<asp:TextBox ID="edtDepartment" runat="server"></asp:TextBox>


有上面4个txtbox 用户不一定输入哪个···

然后进行查询···
该怎么做比较好啊???

[解决办法]
select * from table where userid = this.edtUserID.Text or Name = this.edtName.Text
or policeNumber = this.edtPoliceNumber.Text or department = this.edtDepartment.Text
[解决办法]
string strSql="select * from table where 1=1";
if(edtUserID.Text!="")
{
strSql+=" and userid='"+edtUserID.Text+'";
}
其他依此推
[解决办法]
你给你的参数都设置一个默认值

假设默认值是-1

可以像这么写(条件=-1 or 条件=用户输入条件)and 后面的差不多的
[解决办法]
判断是否为空,查询不为空的

如果是多个查询,那就联合查询
[解决办法]
就这个方法比较好,一般多项查询都是这样做的
[解决办法]
C# code
string strSql="select * from table where 1=1"; strSql+=string.IsNullOrEmpty(edtUserID.Text.Trim())?"":" and userid='"+edtUserID.Text.Trim()+"'"; strSql+=string.IsNullOrEmpty(edtName.Text.Trim())?"":" and username='"+edtName.Text.Trim()+"'"; strSql+=string.IsNullOrEmpty(edtPoliceNumber.Text.Trim())?"":" and useredtPoliceNumber='"+edtedtPoliceNumber.Text.Trim()+"'"; strSql+=string.IsNullOrEmpty(edtDepartment.Text.Trim())?"":" and userdepartment='"+edtDepartment.Text.Trim()+"'";
[解决办法]
引用:
select * from table where userid = this.edtUserID.Text or Name = this.edtName.Text
or policeNumber = this.edtPoliceNumber.Text or department = this.edtDepartment.Text


这是个好办法 ·· 我怎么没想到呢···
呵呵···
方法查出的是有的
[解决办法]
string sql = "select top 10 * from tablename where 1=1";
If(txtBox1.Text.Length > 0)
{
sql+= " AND field1='" + txtBox1.Text + "'";
}
.......
If(txtBox4.Text.Length > 0)
{
sql+= " AND field2='" + txtBox4.Text + "'";
}
[解决办法]

保证后面查询条件都为空时能照样查询
[解决办法]
一楼的答案是一个。你也可以自己编写一个判断程序了进行判断啊哪些TextBox中有数据哪些没有。
[解决办法]
7楼的方法可行!
[解决办法]
写个proc
将四个文本框中的值作为参数传入

create proc procname
@用户名 nvarchar(20)
@姓名 nvarchar(20)
@警号 nvarchar(20)
@部门 nvarchar(20)
as
select
...
from
...
where
(@用户名='' or 用户名=@用户名)


and
(@姓名='' or 姓名=@姓名)
and
(@警号='' or 警号=@警号)
and
(@部门='' or 部门=@部门)
[解决办法]

探讨
弱弱的问一下

="select * from table where 1=1";

where 1= 1 是什么意思呢??

读书人网 >asp.net

热点推荐