2 mbyan mbyan 于 2014.12.08 14:02 提问

asp 初学者 if语句不执行
exec="select bl,ed from yonghu where users = '"&ur&"'"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,3,3
set zj=conn.Execute("select sum(je) as num from xinxi where users='"&ur&"'") 
set bgje=conn.execute("select sum(je) as num from xinxi where users='"&ur&"' and yt like '办公%'")
response.Write(not (bgje.bof and bgje.eof))
response.Write(bgje("num"))
if not(bgje.bof and bgje.eof) then
rs("bl")=0
rs("ed")=zj("num")/2
else
rs("bl")=bgje("num")/zj("num")*100
rs("ed")=zj("num")/2-bgje("num")
end if
rs.update
rs.close

其中not(bgje.bof and bgje.eof)输出的值始终是ture没有false的时候,这是怎么回事?

2个回答

showbo
showbo   Ds   Rxr 2014.12.08 14:17
已采纳

sum,count这种sql语句总会有记录返回的,不需要判断游标是否在开始或者结束位置,你要判断rs这个游标,要不没有记录就会出错了

 exec="select bl,ed from yonghu where users = '"&ur&"'"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,3,3
set zj=conn.Execute("select sum(je) as num from xinxi where users='"&ur&"'") 
set bgje=conn.execute("select sum(je) as num from xinxi where users='"&ur&"' and yt like '办公%'")
if rs.eof then'''''''''''''
  if not(bgje.bof or bgje.eof) then
    rs("bl")=0
    rs("ed")=zj("num")/2
  else
    rs("bl")=bgje("num")/zj("num")*100
    rs("ed")=zj("num")/2-bgje("num")
  end if
  rs.update
else
  response.Write "记录不存在"
end if
rs.close
feiyun0112
feiyun0112   Rxr 2014.12.08 14:12

只需要其中一个为ture
not(bgje.bof or bgje.eof)

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
java中不执行if语句
今天写java脚本时犯了一个错误,导致花费了很长的时间查找问题,结果竟然是语法问题,关于==和equals。 很简单的一个if else语句,最开始是这样,NCIIC的值通过arguments传递,为了证明传递的值无误,我还将它打印出来了: 明明NCIIC的值是“信息一致,照片不一致”,但是总是不执行if里面的语句 然后改成直接赋值,结果正确: 导致我一直坚信语法应该是没有
ASP的IF语句
if 条件 then……else……end if条件运算符:=,,=逻辑运算符:not and or
If 语句在ASP.NET中的应用
If 语句在ASP.NET中的应用在ASP.NET中有许多地方要用到“if语句”,其实if语句是C# 分支结构 中的一种。分支结构是有条件的执行代码,控制下一步要执行哪些代码的过程。分支结构:1.if语句2.Switch语句今天所讲的内容为if 语句:首先C#中if结构的语法如下:If (表达式){   代码块}C
asp语言中if判断语句的求助
If a    Response.Redirect("1.asp") ElseIf a > 5 And a    Response.Redirect("2.asp") ElseIf a > 7 And a    Response.Redirect("3.asp") ElseIf a > 18 Then    Response.Redirect("4.asp") End If
在Repeater控件中使用if语句(参考)
来自:http://blog.csdn.net/Afritxia/article/details/146936 我最近正在写一个 BBS 的项目,在显示主题列表时,我遇到了一个问题。 BBS_Topic 的数据表结构定义大致是下面这样: TABLE BBS_Topic ( TopicID INT NOT NULL IDENTITY(1, 1) PRIMARY KEY,
iOS基础知识:if 语句以及if语句的使用注意事项
if语句的表现形式 if一共有四种表现形式:   第一种:          if(表达式){                 语句块;                }               语义:如果表达式的结果为真,那么执行语句块,否则不执行语句块   第二种:         if(表达式){                           语句块1
习题(简单IF~else)
如果用户名等于“青”,且密码为“123”,则输出欢迎你青,否则 对不起,你不是青import java.util.*;public class Qing { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("请输入你的名字:"); String ...
在Repeater控件中使用if语句(转自AfritXia)
我最近正在写一个 BBS 的项目,在显示主题列表时,我遇到了一个问题。 BBS_Topic 的数据表结构定义大致是下面这样: TABLE BBS_Topic(    TopicID      INT NOT NULL IDENTITY(1, 1) PRIMARY KEY,    Title        NVARCHAR(40),    Author       NVARCHA
简单ASP(适合ASP初学者)
语句……%>定义变量dim语句dim a,ba=10b="ok!"%>注意:定义的变量可以是数值型,也可以是字符或者其他类型的简单的控制流程语句1. If 条件1 then语句1elseif 条件2 then语句2else语句3endif2.while 条件语句 wend3.for count=1 to n step m语句1exit for语句2next 二.ASP数据库简单性作教程.数据库连接
预解释
又叫变量提前声明 在当前的作用域中,js代码执行之前,浏览器首先会默认的把所有带var和function的进行提前的声明或定义 1 理解声明和定义 var name=12; ●声明(declare):var num; 告诉浏览器在全局作用域中有一个num的变量了,如果一个变量只是声明了但是没有赋值,默认的值是undefined ●定义(defined):num=12;给我们的变量进行赋