将char数据类型转换为datetime数据类型会导致日期时间值超出范围

时间:2012-11-19 06:01:22

标签: c# wpf sql-server-2005

  

可能重复:
  The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value

我的任务是显示所有姓名和出生日期。我的条件介于基本但在我选择日期的时间并输入按钮我看到异常,我的代码是

SqlConnection con = new SqlConnection("my connection ");

SqlDataAdapter da = new SqlDataAdapter("select name,date from date where date between'"+ Convert.ToDateTime( datePicker2.SelectedDate)+"' and  '"+ Convert.ToDateTime( datePicker3.SelectedDate)+"'",con);

DataSet ds = new DataSet();

da.Fill(ds, "entry");

da.Dispose();

dataGrid1.DataContext = ds.Tables["entry"].DefaultView; 

plz帮我解决代码错误并编写正确的代码。这是一个wpf应用

2 个答案:

答案 0 :(得分:0)

DateTime应格式化为在sql中有效,格式可以,如yyyyMMdd,即:

SqlConnection con = new SqlConnection("my connection ");

SqlDataAdapter da = new SqlDataAdapter("select name,date from date where date between'"+ Convert.ToDateTime( datePicker2.SelectedDate.ToString("yyyyMMdd")+"' and  '"+ Convert.ToDateTime( datePicker3.SelectedDate.ToString("yyyyMMdd"))+"'",con);

DataSet ds = new DataSet();

da.Fill(ds, "entry");

da.Dispose();

dataGrid1.DataContext = ds.Tables["entry"].DefaultView; 

答案 1 :(得分:0)

从上面的代码中,SQL语句的部分是 - “选择名称,b_date从日期之间的日期”

请您确认以下内容:

  1. “日期”表中是否有“日期”列?它应该是“b_date”而不是“date”还是正确的?

  2. 您能否发布您遇到的异常/错误?

  3. 由于