zoukankan      html  css  js  c++  java
  • preparedstatement execute()操作成功!但是返回false

    转自http://blog.sina.com.cn/s/blog_963fb3af01013rcs.html

    Connection con = getConn();

    String sql2 = "insert into serial_history h "
           + "(serial_no, tran_date, occur_bala, cust_no, status, "
           + " area_code, tran_type, return_code) "
           + "values(?,?,?,?,?,?,?,?)";

    PreparedStatement ps2= con.prepareStatement(sql2);

    ...

    ps2.setDouble(3, bd.getTranOccur());
    ps2.setString(4, bd.getCustNo().substring(3));

    ...

    boolean b = ps2.execute();//这里数据成功插入了!也没出异常!但是返回false;

    int success = ps2.executeUpdate();//保险期间还是用了这个

    经过查看资料发现:下面是API上的,能看懂

    boolean execute()
      throws SQLException在此 PreparedStatement 对象中执行 SQL 语句,该语句可以是任何种类的 SQL 语句。一些特别处理过的语句返回多个结果,execute 方法处理这些复杂的语句;executeQuery 和 executeUpdate 处理形式更简单的语句。 
    execute 方法返回一个 boolean 值,以指示第一个结果的形式。必须调用 getResultSet 或 getUpdateCount 方法来检索结果,并且必须调用 getMoreResults 移动到任何后面的结果。 
    返回:
    如果第一个结果是 ResultSet 对象,则返回 true;如果第一个结果是更新计数或者没有结果,则返回 false

    意思就是如果是查询的话返回true,如果是更新或插入的话就返回false了;

    execute()返回的是一个boolean值,代表两种不同的操作啊,getResultSet()返回的是结果集,而getUpdateCount()返回的是更新的记数

  • 相关阅读:
    1022-哈夫曼编码与译码
    openresty 学习笔记二:获取请求数据
    openresty 学习笔记一:环境安装
    Lua在Windows下的安装、配置、运行
    Django框架中logging的使用
    死磕nginx系列--使用upsync模块实现负载均衡
    死磕nginx系列--nginx 限流配置
    死磕nginx系列--使用nginx做cache服务
    死磕nginx系列--使用nginx做负载均衡
    死磕nginx系列--nginx服务器做web服务器
  • 原文地址:https://www.cnblogs.com/mahuangping/p/6252887.html
Copyright © 2011-2022 走看看