数据库时间转换问题

ddff2004 2005-07-14 11:35:42
<form name = "sjdcx" action = "yxcx.asp" method = "post">
<table width = "600" align = "left">
<tr>
<td width="80" align="middle">时间:</td>
<td width="80">
<select name="year">
<option value="2005" selected>2005</option>
<option value="2005">2006</option>
<option value="2005">2007</option>
</select>
</td>
<td>年</td>
<td>
<select name="month">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
</td>
<td>月</td>
</tr>
<tr>

</tr>
<tr>
<td colspan = 6 align = "left"> 
<input type = "submit" name = "submit" value = "提交">

</td>
<td> </td>
</tr>
</table>
</form>
</td>
</tr>
<% set rs=server.CreateObject("adodb.recordset")
dim iYear
dim iMonth
iYear = Request.Form ("year")
iMonth = Request.Form ("month")

if Request.Form ("submit")<>"" then
dim str
str = "select jssj,jj,jt,xhjj from hwmonthsalary where hwid = '"&session("yhdm")&"'and Year(jssj) = '"&iYear&"'and Month(jssj) = '"&iMonth&"' union select '合计',sum(jj) as jj,sum(jt) as jt,sum(xhjj) as xhjj from hwmonthsalary where hwid = '"&session("yhdm")&"'and Year(jssj) = '"&iYear&"'and Month(jssj) = '"&iMonth&"'"

rs.open str,conn',adOpenDynamic ,adLockReadOnly

while not rs.EOF

%>
<tr>
<td align = "center"><%=rs.Fields ("jssj")%></td>
<td align = "center"><%=rs.Fields ("jj")%></td>
<td align = "center"><%=rs.Fields ("jt")%></td>
<td align = "center"><%=rs.Fields ("xhjj")%></td>
</tr>
<%
rs.MoveNext
wend
rs.close
%>

</table>

<%

end if
'rs.Close ()
set rs = nothing
conn.Close ()
set conn = nothing
%>
提示Microsoft OLE DB Provider for SQL Server 错误 '80040e07'
从字符串转换为 datetime 时发生语法错误,为什么啊?
...全文
91 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pjzh2002 2005-07-15
  • 打赏
  • 举报
回复
Month, year 结果返回的是数字 要将str中的单引号去掉
如果jssj是日期型数据,那么字符串"合计"赋给jssj就会出现错误啦
itera 2005-07-15
  • 打赏
  • 举报
回复
因为是数字
所以不能写成 Year(jssj) = '"&iYear&"' and Month(jssj) = '"&iMonth&"'
应该是 Year(jssj) = "&iYear&" and Month(jssj) = "&iMonth&"
ddff2004 2005-07-15
  • 打赏
  • 举报
回复
Month, year 结果返回的是数字
用户从下拉列表里面选择的年月也是数字啊,为什么还是出错呢???
ddff2004 2005-07-14
  • 打赏
  • 举报
回复
net_lover(孟子E章)
那么我用cast(Year(jssj) as char)这样写可以吗???
孟子E章 2005-07-14
  • 打赏
  • 举报
回复
Year(jssj) = "&iYear&"and Month(jssj) = "&iMonth&""

Month, year 结果返回的是数字

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧