我想从 Sqlite 数据库中读取一个日期时间值并将其分配给 datepicker 控件。这是我正在尝试的代码:
try
{
sqlitecon.Open();
string Query = "Select * from Customer_New where Cust_Id='" + val + "' ";
SQLiteCommand createCommand = new SQLiteCommand(Query, sqlitecon);
// createCommand.ExecuteNonQuery();
SQLiteDataReader dr = createCommand.ExecuteReader();
while(dr.Read()){
if(!dr.IsDBNull(1))
date_open.DisplayDate = dr.GetDateTime(1);
if(!dr.IsDBNull(2))
Date_Joining.DisplayDate = dr.GetDateTime(2);
if(!dr.IsDBNull(3))
txt_Title.Text = dr.GetString(3);
if(!dr.IsDBNull(4))
txt_cardnum.Text =dr.GetString(4);
}
sqlitecon.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
上面的代码在表单加载事件上执行。所以当表单加载时,它应该将 db 表中的日期值加载到日期选择器中。但是表单打开时显示异常“指定转换无效”的消息框。然后它无法从 db 加载任何值,如果我在 while 循环中从分配中删除日期字段,则其余文本字段将正确分配给 form 。我的日期数据库格式是 :MM/DD/YYYY 并且是 datetime 类型。通过在“date_open.DisplayDate = dr.GetDateTime(1);”处放置断点进行调试 它显示系统日期和时间。我的数据库表如下顺序:Cust_id | 日期打开 | Date_Joining |..... .请帮忙