精华内容
下载资源
问答
  • 判断结果集是否为空
    千次阅读
    2019-03-21 19:32:08

    很多时候我们都要判断ResultSet是否存在记录, 但是java里ResultSet 这个对象没有提供一个方法能判断 ,我们只能用next这个方法, next会滚动一条记录丢失第一条数据, 往往很多时候都需要第一条记录,所以我们要做相应的处理 我平常在开发中用到了以下两种形式 。

    第一种方法 不及时更新ResultSet 结果集

    	//sql脚本
    	String sql="seelect * from tb_demo";
    	//改成可以双向滚动,但不及时更新,就是如果数据库里的数据修改过,
    	//并不修改ResultSet记录  必须要改成 TYPE_SCROLL_INSENSITIVE
    	PreparedStatement pstmt = 
    	conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE, 
    	ResultSet.CONCUR_READ_ONLY);
    	//执行查询
    	ResultSet rs = pstmt.executeQuery();
    	//判断是否存在记录
    	if (rs.next()) {
    		 //存在记录 rs就要向上移一条记录 因为rs.next会滚动一条记录了
    		 rs.previous();
    		 //在执行while 循环
    		 while(rs.next()){
    		 system.out.println(rs.getInt(1));
    		}
    	}
    

    推荐第二种方法 及时更新ResultSet 结果集

    	//sql脚本
    	String sql="seelect * from tb_demo";
    	PreparedStatement pstmt = conn.prepareStatement(sql);
    	//执行查询
    	ResultSet rs = pstmt.executeQuery();
    	//判断是否存在记录
    	if (rs.next()) {
    		//有的话 先获取第一条记录
    		do{
    		     System.out.println(rs.getInt(1));
    		 } while(rs.next());
    	}
    

    转自:https://blog.csdn.net/djun100/article/details/9281717

    更多相关内容
  • Java之判断ResultSet结果集是否为空

    千次阅读 2021-07-01 21:46:18
    记录一次憨憨行为:在判断结果集里面有没有值的时候,我傻傻的用“==null”来判断结果集是否为空,导致结果(一直是假象-----结果集里面有值),很小很小的错误,但就是在编码的时候一致追求速度导致马虎,导致了这次...

    前言

    记录一次憨憨行为:在判断结果集里面有没有值的时候,我傻傻的用“==null”来判断结果集是否为空,导致结果(一直是假象-----结果集里面有值),很小很小的错误,但就是在编码的时候一致追求速度导致马虎,导致了这次憨憨行为。

    以下憨憨行为:
    错误示例:

    
    if(rs==null){
    System.out.println("结果集为空!");
    }
    
    else{
    System.out.println("结果集不为空!");
    }      
    

    ResultSet表示select语句的查询结果集。ResultSet对象具有指向其当前数据行的指针,
    最初,指针被置于第一行记录之前,通过next()方法可以将指针移动到下一行记录。

    需要注意的是,不管查询出来有没有结果,ResultSet的值却不是null。

    因此判断ResultSet的结果集是否为空可以用next()方法

    示例代码如下:
    正确示例:

    if(rs.next()){
    System.out.println("结果集不为空!");
    }
    
    
    else{
    System.out.println("结果集为空!");
    }      
    
    展开全文
  • 最近在做毕业设计,需要用到数据库,在用结果集ResultSet判断的时候遇到一个郁闷的事情。 一开始我的想法是这么一个框架: ResultSet rs = dao.executeQuery(sql); if(rs不为空){ while(rs.next()){ … } }else{ … ...
  • 查询的结果集是否为空如何判断

    千次阅读 2015-10-18 13:58:50
    在连接数据库进行查询时,如果输入的查询对象在数据库中不存在时候,应该用以下的方法来作为判断 if(rs.isAfterLast()==rs.isBeforeFirst()){ System.out.print("您所查找的信息不存在,请确认后再查找!");} ...


    在连接数据库进行查询时,如果输入的查询对象在数据库中不存在时候,应该用以下的方法来作为判断


    if(rs.isAfterLast()==rs.isBeforeFirst()){

    System.out.print("您所查找的信息不存在,请确认后再查找!");}

    isBeforeFirst()的作用是获取光标是否位于此  ResultSet  对象的第一行之前,而isAfterLast()的作用是获取光标是否位于此  ResultSet  对象的最后一行之后,若这两个得到的值相等,则说明rs获得的内容为空;注意一点是rs获得的内容的判断不能用null来进行判断,若使用,则不能实现所要的结果。
    展开全文
  • 1.mysql存储过程 drop procedure if exists curdemo CREATE PROCEDURE curdemo(pid int) BEGIN DECLARE notfound INT ... #定义一个辅助变量用于判断 DECLARE a int; #定义游标输出值赋予的变量 DECLARE ...

    1.mysql存储过程

    drop procedure if exists curdemo  CREATE PROCEDURE curdemo(pid int)

     

     

    BEGIN
          DECLARE notfound INT DEFAULT 0;    #定义一个辅助变量用于判断
          DECLARE a int;   #定义游标输出值赋予的变量
          DECLARE cur1 CURSOR FOR SELECT id FROM test.t where id= pid;   #定义游标
          DECLARE CONTINUE HANDLER FOR NOT FOUND SET notfound = 1;  #定义declare continue handler,这个会根据上下文是否有结果判断是否执行SET notfound = 1, 必须在游标定义后定义

          OPEN cur1;
          FETCH cur1 INTO a;
          if notfound = 1 then
                select 'no result';
               #写业务逻辑
          ELSE
                select concat('result:', a);
                #写业务逻辑
          end if;
          CLOSE cur1;

     

    END

     

     

     

     

     

     

    展开全文
  • JDBC判断数据库的查询结果是否为空

    千次阅读 2019-03-20 17:16:56
    Statement ps = conn.createStatement(); ResultSet rs = ps.executeQuery(sql); if (!rs.next()) { //rs为空时执行的内容... } else { //rs不为空时执行的内容... }
  • java中判断集合是否为空

    千次阅读 2020-10-08 20:59:44
    list.isEmpty() list.size... if(list ==null)是判断有没有这个集合 在我们判断集合是否为空的时候这样写就万无一失: List list = new Arraylist(); if(list!=null&&!list.isEmpty()){ //走集合不为空的逻辑 } OK!!
  • JDBC编程中,结果集为空判断方法

    千次阅读 2016-01-19 19:31:24
    JDBC编程中,常常会通过ResultSet rs来获得结果集判断结果集是否为空往往不能直接判断rs == null, 所以一个经常使用的方法如下 try{ conn = DB.getConn(); String sql = "Select count(*) from category ...
  • 我是php的新手,对于判断 $query = "SELECT * FROM driver;... 我就想判断一下返回的$result是否为空 if(!$result)//不行   //后来网上查了一下,可以通过判断返回的记录条数是否为零来判断 if(mysql_n...
  • JDBC判断数据库查询结果集是否为空

    千次阅读 2012-11-09 15:42:00
    通常来说都是用rs.next()来判断结果集是否为空,但是由于执行rs.next()后指针指向的是结果集中的第一条记录,此时再用while(rs.next())取结果集中的数据就会导致第一条数据无法得到。所以用以下代码段是个比较好的...
  • gorm v2 判断查询数据库为空的情况

    千次阅读 2021-04-12 10:57:41
    if errors.Is(err, gorm.ErrRecordNotFound) { // 数据为空的处理。 } 什么这样写,因为有时是一种正常的业务逻辑,而不应该报错给用户。显示或缺省值就好。
  • 如何判断SQL语句查询结果为空

    万次阅读 2018-06-20 08:46:39
    执行与不的操作,那判断结果是否为空是关键。$sql="select * from `operate` where `no_end` = ''";$result=mysql_query($sql);if(!empty($result)){---不为空的执行的代码----}else{---为空的执行的...
  • 代码如下 #验证登录 def relogin(request): #获取用户名与密码带入... name=request.POST.get('username'); password=request.POST.get('password'); rs=usertjn.objects.filter(name=name,password=password)...
  • ResultSet rs结果集是否为空判断

    千次阅读 2018-03-31 17:03:38
    ResultSet指针初始时是指向第一条记录的前面,当使用rs.next()时,指针正好指向第一条记录,因此当判断数据库里面是否有值时 用if(rs.next()){ ........} 另外rs.first()使指针指向第一条记录 rs.last()指向最后一...
  • Java之判断ResultSet结果集是否为空!...

    万次阅读 2011-12-04 12:43:42
    ResultSet表示select语句的查询结果集。ResultSet对象具有指向其当前数据行的指针, 最初,指针被置于第一行记录之前,通过next...遍历结果集,也可以利用该方法判断结果集是否为空。 示例代码如下: //此处
  • 那么怎样判断查询的结果是否为空呢?用count(*)先查一次当然可以,可这样做就会多查询一次,如果仅仅一次倒是无关紧要,可是如果在循环中,那么就会大大延长处理时间,增加服务器负担。 1、只有一个查询结果的查询...
  • mybatis注解sql判断是否为空

    千次阅读 2018-10-25 18:06:23
    @Options(useGeneratedKeys=true,keyProperty = "id",keyColumn = "id")  @Update("<script> update "+Gather.TABLE_NAME+" set status = #{status} &...
  • 1.判断是否存在这样的记录 IF NOT EXISTS 和 IF EXISTS 相对应  例:用户是否存在 IF NOT EXISTS IF EXISTS (SELECT 1 FROM USER(NOLOCK) WHERE USERNAME='ABCD')  begin print '用户存在' end  ...
  • 判断查询结果是否为空 在JDBC中没有方法hasNext去判断是否有下一条数据,但是我们可以使用next方法来代替。 看next方法的官方解释:   boolean next() throws Moves the cursor forward one row from ...
  • /*data:数据,如果该数据集为空就删掉*/ data _null_; if 0 then set &data nobs=nobs; call symputx('nobs',nobs); stop; run; %if &nobs=0 %then %do; proc datasets lib=work nolist; delete ...
  • 在使用Laravel Eloquent模型时,我们可能要判断取出的结果集是否为空,但我们发现直接使用is_null或empty是无法判段它结果集是否为空的。 var_dump之后我们很容易发现,即使取到的空结果集, Eloquent仍然会返回...
  • result= Booking.objects.filter() #方法一 .exists() if result.exists(): print "QuerySet has Data" else: print "QuerySet is empty" #方法二 .count()==0 if result.count() == 0: print "empty" ...
  • 如何判断java对象是否为空

    千次阅读 2021-02-28 13:16:10
    首先来看一下工具StringUtils的判断方法:一种是org.apache....这两种StringUtils工具类判断对象是否为空是有差距的:StringUtils.isEmpty(CharSequence cs); //org.apache.commons.lang3包下的StringUtils类,判...
  • // 数据返回类型 'resultset_type' => 'collection', (数据库的查询结果也就是数据,默认的配置下,数据的类型是一个二维数组...如果要判断数据集是否为空,而必须使用数据对象的isEmpty方法判断: ...
  • 首先来看一下工具StringUtils的判断方法:一种是org.apache....这两种StringUtils工具类判断对象是否为空是有差距的:StringUtils.isEmpty(CharSequence cs); //org.apache.commons.lang3包下的StringUtils类,判...
  • laravel查询结果判断是否为空

    千次阅读 2019-10-29 14:20:11
    如果是get()查询的结果为空,其实$users打印值object(Illuminate\Database\Eloquent\Collection)#339 (1) { ["items":protected]=> array(0) { } } : 类似null的还有 pluck('name')等 $users = DB::table...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 238,726
精华内容 95,490
关键字:

判断结果集是否为空