我必须使用dateDicker FromDate和ToDate,并希望在日期之间选择数据, 我写了查询
select * from tbl where pDate>='" + dtpFrom.value + "'and pDate<='" + dtpTo.value + "'");
此查询给出错误
标准表达式中的数据类型不匹配
但数据类型是ms访问表中的日期/时间。
答案 0 :(得分:2)
您似乎尝试为DateTime
值添加单引号。 #
代表日期,'
代表字符串但代表文字 SQL查询。
如果您使用参数化查询,则不需要它们。
using(var con = new OleDbConnection(conString))
using(var cmd = con.CreateCommand())
{
cmd.CommandText = "select * from tbl where pDate >= ? and pDate <= ?"
cmd.Parameters.AddWithValue("?", dtpFrom.Value);
cmd.Parameters.AddWithValue("?", dtpTo.Value);
...
...
}