[英]How do I add a date using C# & SQL to an MS Access database with column type 'Date/Type'?
[英]how to add null date into access database using c#
我想在访问数据库中插入空日期,如果用户选择付款方式为现金,那么如果用户不提供帐单,cheque_date值应自动输入为null,然后在数据库iam中尝试将bill_date输入为null,但条件是数据类型不匹配对于使用蒙版文本框的bill | _date和cheque_date im和chequeno,表达式异常即将到来。 和帐单号 即时通讯使用文本框(checkno和billno。它可以存储为空,唯一的问题是将空日期存储到accessc数据库中)
if (txtchequeno.Text == "")
{
cmd.Parameters.AddWithValue("@Cheque_No", cheque);
}
else
{
cmd.Parameters.AddWithValue("@Cheque_No", txtchequeno.Text);
}
DateTime chequeDate;
var value = (object)DBNull.Value;
if (DateTime.TryParseExact(txtmaskchequedate.Text, "dd/mm/yyyy", null, System.Globalization.DateTimeStyles.None, out chequeDate))
{
value = chequeDate;
}
cmd.Parameters.AddWithValue("@Cheque_Date", value);
if (txtbillno.Text == "")
{
cmd.Parameters.AddWithValue("@Bill_No", billno);
}
else
{
cmd.Parameters.AddWithValue("@Bill_No", txtbillno.Text);
}
DateTime billdate;
var value1 = (object)DBNull.Value;
if (DateTime.TryParseExact(txtmaskbilldate.Text, "dd/mm/yyyy", null, System.Globalization.DateTimeStyles.None, out billdate))
{
value1 = billdate;
}
cmd.Parameters.AddWithValue("@Bill_Date", value1);
在这里,我更改了我的代码,但仍然出现相同的错误,向我显示数据类型不匹配表达式仍然无法解决
我设置格式:访问数据库中cheque_date字段的shortdate,在这里执行以下代码,该代码成功执行了有值或无值的字段(谢谢@phils和@corak)
DateTime chequeDate;
var value = (object)DBNull.Value;
if (DateTime.TryParseExact(txtmaskchequedate.Text, "dd/MM/yyyy", null, System.Globalization.DateTimeStyles.None, out chequeDate))
{
value = chequeDate;
}
cmd.Parameters.AddWithValue("@Cheque_Date", value);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.