请问,我用C#导入数据库的数据,在sql查询能看到,但用c#的日期筛选后,却看不到,请问是什么原因呢,我的代码及相关截图如下,请指导;
```c#
private void btnsearch_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=192.168.100.247;database=Whmesinfo;user=sa;password=whyy@2021");
conn.Open();
SqlString = @"select * from w_Qctableg where name like '%" + textBox3.Text + "%' and batchNo like '%"
+ textBox1.Text + "%' and region like '%"
+ textBox4.Text + "%' and name like '%"
+ textBox2.Text + "%' and [sampledate] >= '" + dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss") + "'and [sampledate] <= '" + dateTimePicker2.Value.ToString("yyyy-MM-dd HH:mm:ss") + "' order by sampledate asc ";
//加载数据并显示
try
{
//查询条件和SqlConnection连接
SqlCommand cmd = new SqlCommand(SqlString, conn);
//数据适配器
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
sda.Fill(ds, "w_Qctableg");
dt = ds.Tables["w_Qctableg"];
dataGridView1.DataSource = null;
dataGridView1.DataSource = dt.DefaultView;
this.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;//让查询的数据换行显示;
dataGridView1.Columns[0].Visible = false;
dataGridView1.Columns[0].HeaderText = "id";
dataGridView1.Columns[1].HeaderText = "取样日期";
dataGridView1.Columns[2].HeaderText = "报告日期";
dataGridView1.Columns[3].HeaderText = "名称";
dataGridView1.Columns[4].HeaderText = "批号";
dataGridView1.Columns[5].HeaderText = "取样点";
dataGridView1.Columns[6].HeaderText = "取样部位";
dataGridView1.Columns[7].HeaderText = "检验编号";
dataGridView1.Columns[8].HeaderText = "区域";
dataGridView1.Columns[9].HeaderText = "纯化水/设备擦拭需氧菌(cfu/ml或cfu/25cm²)";
dataGridView1.Columns[10].HeaderText = "设备擦拭霉菌及酵母菌(cfu/25cm²)";
dataGridView1.Columns[11].HeaderText = "压缩空气菌落总数(cfu/皿)";
dataGridView1.Columns[12].HeaderText = "表面微生物菌落数(cfu/碟)Ø55mm";
dataGridView1.Columns[13].HeaderText = "沉降菌落数(cfu/皿)";
dataGridView1.Columns[14].HeaderText = "浮游菌菌落数(cfu/m³)";
dataGridView1.Columns[15].HeaderText = "检验结论";
dataGridView1.Columns[16].HeaderText = "备注";
}
catch
{ }
finally
{
conn.Close();
}
}
```
名称、批号等那些查询条件模糊查询没传就从sql中排除掉
断点,把sql复制出来,放到客户端里看看到底长什么样子,然后执行一下看到底哪行报错
拼接sql的时候,判断一下,如果文本框为空就别把内容拼接进去,否则容易出bug
我将模糊查询的条件去掉,就可查询到了,但这是为什么呢,而且我们还需要这些模糊查询的条件,请各位老师再指导一下;