asp.net中下拉框和文本框怎么一起查询数据库中的数据,然后显示在Gridview中
下拉框里包括语文、数学、英语等科目,文本框里的是题干内容。publicDataSetsearchQueKT(stringkm,stringtg){stringsql;if...
下拉框里包括语文、数学、英语等科目,文本框里的是题干内容。
public DataSet searchQueKT(string km,string tg)
{
string sql ;
if (tg != "")
{
sql = "select * from KM_TG where 题干 like '%" + tg + "%'";
}
if (km != "全部")
{
sql = "select * from KM_TG where 科目名称='" + km + "'";
}
else
{
sql = "select * from KM_TG where 题干 like '%" + tg + "%' and 科目名称='" + km + "'";
}
return DBOperate.getDataSet(sql,"dxKT");
}
我是这样写的,但是按题干查找时就不行了 展开
public DataSet searchQueKT(string km,string tg)
{
string sql ;
if (tg != "")
{
sql = "select * from KM_TG where 题干 like '%" + tg + "%'";
}
if (km != "全部")
{
sql = "select * from KM_TG where 科目名称='" + km + "'";
}
else
{
sql = "select * from KM_TG where 题干 like '%" + tg + "%' and 科目名称='" + km + "'";
}
return DBOperate.getDataSet(sql,"dxKT");
}
我是这样写的,但是按题干查找时就不行了 展开
展开全部
一楼说的没错,比如你要查的表是课题表:Issue
这时候后台构造一条sql语句:
string queryStr = "select * from Issue u where u.科目名称='" + 下拉框.SelectValue + "' and u.题干='"+文本框.Text+"'";
找出来的数据集DataSet 绑定到GridView中。
补充:是的假设你只按题干查找的话,你必须把科目的条件去掉,你的语句两个条件都会加进去,找出来必然会是空的数据
这时候后台构造一条sql语句:
string queryStr = "select * from Issue u where u.科目名称='" + 下拉框.SelectValue + "' and u.题干='"+文本框.Text+"'";
找出来的数据集DataSet 绑定到GridView中。
补充:是的假设你只按题干查找的话,你必须把科目的条件去掉,你的语句两个条件都会加进去,找出来必然会是空的数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是将下拉框的数据源设定为从数据库中查询的值,比如查询出科目名称组成DataTable,然后绑定下拉框,然后将选择的值和文本框的值作为sql查询条件查询数据绑定到GridView
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是构造sql 语句啊,用where 条件表达式
用and 关键字 可以实现联合条件查询
PS:你的逻辑明显有问题啊
if (tg != "")
{
sql = "select * from KM_TG where 题干 like '%" + tg + "%'";
}
这句完全是废的
建议改成这样:
public DataSet searchQueKT(string km, string tg)
{
string sql = "select * from KM_TG where 1=1 ";
if (tg != string.Empty)
{
sql += " and 题干 like '%" + tg + "%'";
}
if (km != "全部")
{
sql += " and 科目名称='" + km + "'";
}
return DBOperate.getDataSet(sql, "dxKT");
}
用and 关键字 可以实现联合条件查询
PS:你的逻辑明显有问题啊
if (tg != "")
{
sql = "select * from KM_TG where 题干 like '%" + tg + "%'";
}
这句完全是废的
建议改成这样:
public DataSet searchQueKT(string km, string tg)
{
string sql = "select * from KM_TG where 1=1 ";
if (tg != string.Empty)
{
sql += " and 题干 like '%" + tg + "%'";
}
if (km != "全部")
{
sql += " and 科目名称='" + km + "'";
}
return DBOperate.getDataSet(sql, "dxKT");
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询