ASP.Net中DateTime.Today的值与mdb数据库中日期字段的值匹配不上
asp.net用的是access的mdb数据库,在Page_Load的时候需要查询一条记录,做个判断,可是运行后系统说:标准表达式中数据类型不匹配。先看一下我的源码:pr...
asp.net 用的是access的mdb数据库,在Page_Load的时候需要查询一条记录,做个判断,可是运行后系统说:标准表达式中数据类型不匹配。
先看一下我的源码:
protected void Page_Load(object sender, EventArgs e)
{
LabelTime.Text = DateTime.Now.ToString();
OleDbConnection Conn = method.DataPath(); // 数据库联接字串
OleDbCommand cmd = new OleDbCommand("select count(*) from 晚餐 where 用户名='" + HttpContext.Current.User.Identity.Name + "' and 日期='" + DateTime.Today.ToLongDateString() + "'", Conn);
Conn.Open();
byte count = Convert.ToByte(cmd.ExecuteScalar());
if (count > 0)
{执行功能}
Conn.Close();
}
“晚餐”表中的“日期”字段当初设置的是“日期/时间”类型,格式为“长日期”,添加记录后显示的样子是这样的:2008年6月16日
但是上述代码运行时就是报错,说“标准表达式中数据类型不匹配”,错在哪里了呢?请指示。
或者有什么更好的思路,也请指导。
如果两端加#而不是'的话,+ "' and 日期=#" + DateTime.Today.ToLongDateString() + "#", Conn);
还是显示错误:
日期的语法错误 在查询表达式 '用户名='wbsha' and 日期=#2008年6月16日' 中。 展开
先看一下我的源码:
protected void Page_Load(object sender, EventArgs e)
{
LabelTime.Text = DateTime.Now.ToString();
OleDbConnection Conn = method.DataPath(); // 数据库联接字串
OleDbCommand cmd = new OleDbCommand("select count(*) from 晚餐 where 用户名='" + HttpContext.Current.User.Identity.Name + "' and 日期='" + DateTime.Today.ToLongDateString() + "'", Conn);
Conn.Open();
byte count = Convert.ToByte(cmd.ExecuteScalar());
if (count > 0)
{执行功能}
Conn.Close();
}
“晚餐”表中的“日期”字段当初设置的是“日期/时间”类型,格式为“长日期”,添加记录后显示的样子是这样的:2008年6月16日
但是上述代码运行时就是报错,说“标准表达式中数据类型不匹配”,错在哪里了呢?请指示。
或者有什么更好的思路,也请指导。
如果两端加#而不是'的话,+ "' and 日期=#" + DateTime.Today.ToLongDateString() + "#", Conn);
还是显示错误:
日期的语法错误 在查询表达式 '用户名='wbsha' and 日期=#2008年6月16日' 中。 展开
展开全部
..... + "' and 日期=#" + DateTime.Today.ToLongDateString() + "#", Conn);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
"' and 日期=#" + DateTime.Today.ToString() + "#"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询