最近在写一个东西时,遇到了如下问题:
if (dtStart != dtEnd || (dtEnd ==dtStart && dtStart.ToShortDateString () !=DateTime .Now .ToShortDateString ()))
{
sbWhere.Append(" and superviseInfo.superviseDate between ‘");
sbWhere.Append(dtStart.ToShortDateString());
sbWhere.Append("’ and ‘“);
sbWhere.Append(dtEnd.ToShortDateString());
sbWhere.Append("’");
}
结果在执行时,提示“标准表达式中数据类型不匹配”问题。
我用的后台数据库是ACCESS,这在SQL SERVER中是不会出现的。
解决办法:
把上面的语句换成:
if (dtStart != dtEnd || (dtEnd ==dtStart && dtStart.ToShortDateString () !=DateTime .Now .ToShortDateString ()))
{
sbWhere.Append(" and superviseInfo.superviseDate between #");
sbWhere.Append(dtStart.ToShortDateString());
sbWhere.Append("# and #");
sbWhere.Append(dtEnd.ToShortDateString());
sbWhere.Append("#");
}
即可。