zoukankan      html  css  js  c++  java
  • Statement对象

    Statement对象分为以下三种:

    Statement: 提供了基本查询的接口,一般用来执行简单的、无参数的查询语句

    PreparedStatement:从Statement类继承过来的类,一般用来执行带IN参数或不带参数的查询语句

    CallableStatement: 基类是PreparedStatement, 一般用来对存储过程的查询,可以处理Out参数

    一、Statement对象的创建与使用

    Connection con=DriverManager.getConnection(url, "System", "new");
    Statement stmt=con.createStatement();
    ResultSet rs=stmt.ExecuteQuery("select * from new");
    1、Statement提供了三种不同的方法来执行SQL语句

    ExecuteQuery: 用来返回一个单独的结果集ResultSet

    ExecuteUpdate: 用来执行insert, update 和 delete语句,返回值是一个整数,代表了这些语句所作用到的行数;还可以执行语言定义语句(create table, drop table),返回值为0, 因为它们不作用于行

    Execute: 则会返回一个或多个ResultSet对象, 可是更新数,或两者都有

    2、Statement对象不包含SQL语句,使用者必须提供SQL语句作为Statement方法的参数

    PreparedStatement由于已经包含了一个预编译的SQL语句,则不必给它的方法提供SQL语句作为参数

    CallableStatement重载了PreparedStatement方法,所以也不需要额外的SQL语句

    3、Execute方法的使用

    当一个语句可能返回一个以上的记录集或是多于一个的更新数目,或者两者都返回时,才能用到Execute

    如果Execute返回的是true, 则说明返回值是ResultSet, 如果为false, 则说明返回值是个整型数

    要获得Execute返回的多于一个以上的记录集时,首先要调用getResultSet得到第一个记录集,然后调用getMoreResults 和getResultSet得到得到第二个记录集 ; 当返回的更新数目多于2个时,得到第一个数要用getUpdateCount, 然后调用getMoreResults和getUpdateCount得到第二个结果

    如果getResultSet返回的是null, getUpdateCount返回的是-1, 则说明没有理多的返回结果



    stmt.Execute(sql);
    while(true){
    int rowCount=stmt.getUpdateCount();
    if(rowCount>0) {
    System.out.println("改变的行数为"+rowCount);
    stmt.getMoreResult();
    Continue;
    }
    if(rowCount==0){
    System.out.println("没有行被改变或是SQL语句是个数据库定义语言“);
    stmt.getMoreResult();
    Continue;
    }
    ResultSet rs=stmt.getResultSet();
    if(rs!=null){
    //.....
    while(rs.next()){
    //处理结果集
    }
    stmt.getMoreResult();
    continue;
    }
    break;
    }
  • 相关阅读:
    机器学习之--画图补充
    机器学习之--KNN算法简单实现
    redhat centos yum源的安装
    redhat6.5 linux 安装mysql5.6.27
    bash 截取字符串
    redhat vim编辑器永久添加行号及搜索
    Orthomcl的详细使用
    InterProScan 5.25-64.0 安装和使用
    paml正选择处理时序列里有终止密码子怎么处理掉
    R语言putty中直接使用X11(Xming)绘图
  • 原文地址:https://www.cnblogs.com/cyy-13/p/5779678.html
Copyright © 2011-2022 走看看