微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从c#中的特定日期的sql server 2008表中访问数据?

在我的窗口应用程序中,我想显示两个日期之间的记录.我使用datepicker来选择日期.在sql server 2008表中,我使用数据类型[date]来存储日期.我的问题是它没有正常工作来捕获第一个日期,它捕获我选择的下一个日期.我使用以下代码

cmd5.Parameters.AddWithValue("date1",dateTimePicker4.Value);
cmd5.Parameters.AddWithValue("date2",dateTimePicker5.Value);

当我尝试这个:

cmd5.Parameters.AddWithValue("date1",dateTimePicker4.Value.AddDays(-1));
cmd5.Parameters.AddWithValue("date2",dateTimePicker5.Value);

结果-

我的完整代码

cmd10 = new sqlCommand("select a_id,commtyp,convert(varchar(10),date,105),comm,primm,c_id,agent from comm where a_id= '" + textBox1.Text + "' AND  date >= @date1  AND date <=  @date2 ",agr);
            cmd10.Parameters.AddWithValue("@date1",dateTimePicker1.Value.AddDays(-1));
            cmd10.Parameters.AddWithValue("@date2",dateTimePicker2.Value);
            adp = new sqlDataAdapter(cmd10);
            DataSet ds = new DataSet();
            adp.Fill(ds,"comm");
            dataGridView1.DataSource = ds;
            dataGridView1.DataMember = "comm";                
            checkBox2.Checked = false;
            groupBox15.Show();
            cmd10.Parameters.Clear();

解决方法

您正在使用来自datepicker的value属性,它为您提供了秒和毫秒的日期.你必须从它的值得到实际的datepart.

试试这个

dateTimePicker4.Value.Date

代替

dateTimePicker4.Value

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐