日期:2014-05-17  浏览次数:20778 次

请问这个错误是怎么回事?
页面1的代码:
<%   set   rs=server.createobject( "adodb.recordset ")
TableName   =   DatePart( "m ",DateAdd( "m ",-1,Date))
sql= "select   a.sqjlname,SUM(b.money)   AS   ywmoney   from   pstnuser   as   a   RIGHT   OUTER   JOIN   "&TableName& "pstn   as   b   ON   a.phonenumber=b.phonenumber   GROUP   BY   a.sqjlname "
rs.open   sql,conn,1,1
if   rs.eof   then%>
<%else%>
<%   do   while   not   rs.eof%>
<td   width= "65% ">

<%dim   a
a=rs( "sqjlname ")
if   a= " "   Then
response.write   " <a   href=upfile.asp> <link   href=css.css   rel=stylesheet> <br> 无 </a> "  
else
response.write   " <a   href=yjtj_sy_pstn2.asp?sqjlname= "&a& "> <link   href=css.css   rel=stylesheet> <br> "&a& " </a> "  
end   if
%>
</td>
<td   width= "34% "> <%=rs( "ywmoney ")%> </td>
</tr>
<%   rs.movenext
loop
rs.close
set   rs=nothing
end   if
%>
这里有一个问题:
起初我没有定义a的时候,直接rs( "sqjlname "),按照该字段分组求合后,sqjlname有空值,因此我加了IF语句,但是结果并没显示 "无 ".

问题二:连接到yjtj_sy_pstn2.asp
代码如下:
<%   set   rs=server.createobject( "adodb.recordset ")
TableName   =   DatePart( "m ",DateAdd( "m ",-1,Date))
sql= "select   a.*,b.*   from   pstnuser   as   a   RIGHT   OUTER   JOIN   "&TableName& "pstn   as   b   ON   a.phonenumber=b.phonenumber   where   sqjlname= "&request( "sqjlname ")& " "
rs.open   sql,conn,1,1
if   rs.eof   then%>
<%else%>
<%   do   while   not   rs.eof%>
<td   width= "6% "   height= "20 "> <%=rs( "username ")%> </td>
</tr>
<%   rs.movenext
loop
rs.close
set   rs=nothing
end   if
%>

加了SQL的WHERE后面的内容,结果提示我:
Microsoft   OLE   DB   Provider   for   ODBC   Drivers   (0x80040E21)
ODBC   驱动程序不支持所需的属性。
/sqjl/data_tj/lyyj/yjtj_sy_pstn2.asp,   第   40   行

是不是因为sqjlname这个字段的相同值在记录里有1条以上造成的?

整个这两个页面关系我是从阅读新闻之类的程序中的
where   id= "&request( "id ")& " "推出来的,不知道合理不合理.



------解决方案--------------------
起初我没有定义a的时候,直接rs( "sqjlname "),按照该字段分组求合后,sqjlname有空值,因此我加了IF语句,但是结果并没显示 "无 ".
-----------------------------------------------------

判断是否为空:if rs( "sqjlname ")= " " or isnull(rs( "sqjlname ")) then

加了SQL的WHERE后面的内容,结果提示我:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)
ODBC 驱动程序不支持所需的属性。
/sqjl/data_tj/lyyj/yjtj_sy_pstn2.asp, 第 40 行
---------------------------
where sqjlname= ' "&request( "sqjlname ")& " ' "

------解决方案--------------------
sqjlname 要加条件。是哪个表的。。如 a.sqjlname
------解决方