请教选择查询的问题

zonezq 2013-07-26 09:54:09
如图所示,已可实现时间段的选择查询问题。但是勾选其他选项后,实现的是全部数据的查询,无法实现某一时间段特定选项的查询。代码如下,本人小白,还请各位大侠不吝赐教。
private void btnSelect_Click(object sender, EventArgs e)
{

DataSet ds = new DataSet();
ds.Clear();

string queryselect = "select * from jt where 1=1 ";

if (cb1.Checked)
{
queryselect += " and model = '" + cbbcategory.Text + " '";
}
if (cb2.Checked)
{
queryselect += " and modelnumber" + " like '%" + txtMN.Text + "%'";
}
if (cb3.Checked)
{
queryselect += " and problemdescribe" + " like '%" + cbbQC.Text + "%'";
}
if (cb4.Checked)
{
queryselect += " and author" + " like '%" + txtAuthor.Text + "%'";
}
if (cb7.Checked)
{
queryselect += " and data" + " like '%" + txtData.Text + "%'";
}

if (cb5.Checked && cb6.Checked)
{
string ss = dateTimePicker1.Value.Date.ToString("yyyy-MM-dd 23:00:00");
string ee = dateTimePicker2.Value.Date.ToString("yyyy-MM-dd 23:00:00");
queryselect = "select * from jt where data between #" + ss + "# and #" + ee + "# ";
}
...全文
93 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
赱在岸上的鱼 2013-08-21
  • 打赏
  • 举报
回复
打印,一个很好的程序调试方式 在sql执行之前打印出sql语句,或者在每一次sql拼接之后打印出拼接后的结果,就会很明白了
Regan-lin 2013-07-26
  • 打赏
  • 举报
回复
但是勾选其他选项后,实现的是全部数据的查询,无法实现某一时间段特定选项的查询。 这就说明是SQL语句问题了
kingdom_0 2013-07-26
  • 打赏
  • 举报
回复
动态sql拼接有误,如楼上所示
zbdzjx 2013-07-26
  • 打赏
  • 举报
回复
上面的错了,应该是:
            if (cb5.Checked && cb6.Checked)
            {
               string ss = dateTimePicker1.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               string ee = dateTimePicker2.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               queryselect = "select * from jt where data between #" + ss + "# and #" + ee + "# ";
            }
改成
            if (cb5.Checked && cb6.Checked)
            {
               string ss = dateTimePicker1.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               string ee = dateTimePicker2.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               queryselect += " and data between #" + ss + "# and #" + ee + "# ";
            }
zbdzjx 2013-07-26
  • 打赏
  • 举报
回复
            if (cb5.Checked && cb6.Checked)
            {
               string ss = dateTimePicker1.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               string ee = dateTimePicker2.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               queryselect = "select * from jt where data between #" + ss + "# and #" + ee + "# ";
            }
改成
            if (cb5.Checked && cb6.Checked)
            {
               string ss = dateTimePicker1.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               string ee = dateTimePicker2.Value.Date.ToString("yyyy-MM-dd 23:00:00");
               queryselect = "and data between #" + ss + "# and #" + ee + "# ";
            }

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧