Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
和Statement stmt = con.createStatement();
区别在哪啊

解决方案 »

  1.   

    Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
    和Statement stmt = con.createStatement();这样好像没有区别.默认的情况下rs不能往回读的啊,你需要指定参数,再能决定是否可以往回,你没有JDK帮助文档吗?去查查啊.
    如果默认情况下
    结果集ResutlSet的previous() 方法不可用.
    createStatement
    Statement createStatement(int resultSetType,
                              int resultSetConcurrency)
                              throws SQLException创建一个 Statement 对象,该对象将生成具有给定类型和并发性的 ResultSet 对象。此方法与上述 createStatement 方法相同,但它允许重写默认结果集类型和并发性。 参数:
    resultSetType - 结果集类型,它是 ResultSet.TYPE_FORWARD_ONLY、ResultSet.TYPE_SCROLL_INSENSITIVE 或 ResultSet.TYPE_SCROLL_SENSITIVE 之一
    resultSetConcurrency - 并发类型;它是 ResultSet.CONCUR_READ_ONLY 或 ResultSet.CONCUR_UPDATABLE 之一 
    返回:
    一个新的 Statement 对象,该对象将生成具有给定类型和并发性的 ResultSet 对象 
    抛出: 
    SQLException - 如果发生数据库访问错误,或者给定参数不是指示类型和并发性的 ResultSet 常量
    从以下版本开始: 
    1.2 createStatement
    Statement createStatement()
                              throws SQLException创建一个 Statement 对象来将 SQL 语句发送到数据库。没有参数的 SQL 语句通常使用 Statement 对象执行。如果多次执行相同的 SQL 语句,使用 PreparedStatement 对象可能更有效。 
    使用返回的 Statement 对象创建的结果集在默认情况下类型为 TYPE_FORWARD_ONLY,并带有 CONCUR_READ_ONLY 并发级别。 
    返回:
    一个新的默认 Statement 对象 
    抛出: 
    SQLException - 如果发生数据库访问错误