出错:标准表达式中数据类型不匹配,

<%ifrequest("time")="uptime"thenselecttime=request("selecttime")sql="SELECT*FROMxyglw... <%
if request("time") = "uptime" then
selecttime = request("selecttime")
sql = "SELECT * FROM xygl where year(a26) = "&year(selecttime)&" and month(a26) = "&month(selecttime)&" ORDER BY a26 DESC"
elseif request("time") = "uptime1" then
selecttime1 = request("selecttime1")
sql = "SELECT * FROM xygl where year(a26) = "&year(selecttime1)&" and month(a26) = "&month(selecttime1)&" and day(a26) = "&day(selecttime1)&" ORDER BY a26 DESC"
elseif request("time") = "time" then
sql = "SELECT * FROM xygl where a26 = '"&request("timeinfo")&"' ORDER BY a26 DESC"
else
sql="SELECT * FROM xygl where year(a26) = year(now()) and month(a26) = month(now()) ORDER BY a26 DESC"
end if
set rs=conn.execute(sql)
'response.write(sql)
i = 1
do while not rs.eof
%>

提示:
Microsoft JET Database Engine错误 '80040e07'
标准表达式中数据类型不匹配。
personlist.asp,行 83
展开
 我来答
缓步莫迟疑C
推荐于2018-04-12 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6409万
展开全部
先确认一下你的a26字段的数据类型,如果是文本型的,那么year(a26)就是错误的,因为year()函数要求参数是一个日期型数据.而如果a26是日期型,那么另外一个查询中的a26 = '"&request("timeinfo")&"' 查询条件指定的是字符串条件,也是错误的.
所以,首先要确定是哪种数据类型所造成的错误,如果是第一种情况,可以试试year(cdate(a26)),当然,你的a26字段必须是有效的日期型文本(除此之外还有month,day两个函数).如果是第二种情况且使用Access数据库,那么,将单引号改为#号.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式