从数据库检索日期和时间值 [英] Retrieving date and time value from Database

查看:52
本文介绍了从数据库检索日期和时间值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的所有人,我有一个搜索表单,我想从中检索保存的日期和时间值.我有两个dateandimepickers,它们使用户可以从一个数据库中选择两个不同的日期和时间.我使用过BETWEEN FUNCTION,但是当我运行它时,它给我一个错误转换失败".由于日期以2012/01/02格式保存,而DATEANDTIMEPICKER格式是2012年4月星期三!我该如何找回它?

这是代码:

Dear All I''ve a search form, from where i want to retrieve saved date and time values. I''ve two dateandimepickers which enable a user to select two different date and time from one coloumn of database. I''ve used BETWEEN FUNCTION but when i am running it, it gives me an error "Conversion failed". Because the date is saved in 2012/01/02 format and DATEANDTIMEPICKER Format is Wednesday April 2012! How can i retrieve it please?

Here is the code :

SqlDataAdapter commm = new SqlDataAdapter("Select * from Donor where [Planned Start Date] Between '"+ dtpSBPlannedStartDate.Checked+"' And '"+ dateTimePicker1.Checked +"' ", con);
                DataSet dsss = new DataSet();
                
                commm.Fill(dsss, "Donor");
                if (dsss.Tables["Donor"].Rows.Count != 0)
                {
                    dataGridView1.DataSource = dsss.Tables["Donor"];
                }
                else
                {
                    MessageBox.Show("Record Not Found..........");
                }

推荐答案

Um.您确实意识到 DateTimePicker.Checked [ ^ ]属性是bool,而不是DateTime?也许您想要Value属性?并通过参数化查询传递它?
Um. You do realise that the DateTimePicker.Checked[^] property is a bool, not a DateTime? Perhaps you want the Value property? And to pass it with a Parametrized query?


尝试一下...
字符串DateTo = null,DateFrom = null;
私有void SetDateFormat()
{
DateTimePicker1.CustomFormat ="yyyy/MM/dd";
DateTimePicker1.Format = DateTimePickerFormat.Custom;
DateTo = DateTimePicker1.Text;
DateTimePicker1.Format = DateTimePickerFormat.Long;//根据您的需要设置格式

DateTimePicker2.CustomFormat ="yyyy/MM/dd";
DateTimePicker2.Format = DateTimePickerFormat.Custom;
DateFrom = DateTimePicker2.Text;
DateTimePicker2.Format = DateTimePickerFormat.Long;//根据您的需要设置格式
}

然后在查询前调用此功能.像这样

YourFunction()
{
SetDateFormat();
字符串query ="Select from from Table_Name where DateTable_name BETWEEN''" + DateTo +''AND''" + DateFrom +''";
.
.
}


希望这对您有所帮助.
Try this...
string DateTo=null,DateFrom=null;
private void SetDateFormat()
{
DateTimePicker1.CustomFormat="yyyy/MM/dd";
DateTimePicker1.Format=DateTimePickerFormat.Custom;
DateTo=DateTimePicker1.Text;
DateTimePicker1.Format=DateTimePickerFormat.Long;//Set Format as per your needs

DateTimePicker2.CustomFormat="yyyy/MM/dd";
DateTimePicker2.Format=DateTimePickerFormat.Custom;
DateFrom=DateTimePicker2.Text;
DateTimePicker2.Format=DateTimePickerFormat.Long;//Set Format as per your needs
}

then Call this Fuction Before Query..like this

YourFunction()
{
SetDateFormat();
string query="Select * from Table_Name where DateTable_name BETWEEN ''"+ DateTo +"'' AND ''"+ DateFrom +"''";
.
.
}


Hope this helps you..


嗨 检查[计划的开始日期]列的数据类型为DateTime或smalldatetime
如果没有,则将其更改为smalldatetime


祝你好运
快乐编码
hi check [Planned Start Date] column have datatype DateTime or smalldatetime
if not then change it to smalldatetime


best Luck
Happy Coding


这篇关于从数据库检索日期和时间值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆