jjzjj

resultSet

全部标签

java - 在 Statement 和 ResultSet 上设置提取大小之间的区别

在Statement和ResultSet上设置提取大小有什么区别?Oracle文档说,如果在Statement上设置了提取大小,那么ResultSet也会使用相同的大小,只要在获取结果集之前设置提取大小即可。如果我将它设置在Statement或ResultSet上会有什么区别?我正在使用Oracle数据库。以下是有关它的Oracle文档:FetchSizeBydefault,whenOracleJDBCrunsaquery,itretrievesaresultsetof10rowsatatimefromthedatabasecursor.ThisisthedefaultOraclero

java - 如何直观地显示 java ResultSet?

我正在寻找一种在屏幕上显示java.sql.ResultSet的方法。最好内置到java或swing中。如果它们都没有简单的体面方法,我会考虑使用spring。如何? 最佳答案 遍历ResultSet的结果并放入TableModel。DefaultTableModelresultSetToTableModel(DefaultTableModelmodel,ResultSetrow)throwsSQLException{ResultSetMetaDatameta=row.getMetaData();if(model==null)mod

java - 结果集 TYPE_SCROLL_SENSITIVE 和 TYPE_SCROLL_INSENSITIVE 之间的区别

我试图了解这两种创建语句的方法之间的区别:1:Statementstatement=connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);2:Statementstatement=connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);第二个参数相同但第一个参数不同来自java文档:resultSetType-aresultsettype;oneo

java - Hibernate 无法提取 ResultSet 异常

我已经在Tomcat服务器上部署了一个GWT应用程序。一切正常,但有时我会遇到以下异常:org.hibernate.exception.JDBCConnectionException:couldnotextractResultSetatcom.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)atcom.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:579)atcom.google.gwt.user.server.rp

java - JDBC ResultSet Scroll Sensitive 类型和Result Set Scroll Insensitive 类型

谁能告诉我JDBCResultSetScrollSensitiveType和ResultSetScrollInsensitiveType之间的区别?我们通常在项目中的什么地方使用这些? 最佳答案 ResultSet对象的类型决定了它在两个方面的功能级别:操作游标的方式,以及ResultSet对象如何反射(reflect)对基础数据源所做的并发更改。TYPE_SCROLL_INSENSITIVE:Theresultcanbescrolled;itscursorcanmovebothforwardandbackwardrelativet

java - 在 Java 7 中关闭 ResultSet

这个问题在这里已经有了答案:MustJDBCResultsetsandStatementsbeclosedseparatelyalthoughtheConnectionisclosedafterwards?(12个答案)关闭5年前。以下站点展示了如何将新的“AutoClosable”功能与JDBC结合使用:link.该站点显示了语句将如何自动关闭,但结果集不在自动关闭的try()部分中。所以,我的问题是,我不需要在Java7中直接关闭ResultSets吗?我一直使用以下模式:关闭结果集、关闭语句、关闭连接。

java - 只返回 ResultSet 的列名而不实际执行查询(Oracle 和 Java)

我想知道是否有一种方法可以返回结果集(Java中的Oracle数据库)的列名,如果我实际执行了查询,就会生成这些列名。例如,假设我的SQL看起来像这样:select*from;有没有一种方法可以将这个查询发送到oracle并让它告诉我它将返回的结果集中的列名是什么而不实际执行查询(因为它很昂贵)? 最佳答案 我认为使用PreparedStatement可行:PreparedStatementstmt=connection.prepareStatement("select...");ResultSetMetaDatameta=stmt

Java、ResultSet.close()、PreparedStatement.close()——有什么用?

在我的网络应用程序中,我广泛使用了数据库。我有一个抽象的servlet,所有需要数据库连接的servlet都继承自它。该抽象servlet创建一个数据库连接,调用必须由继承servlet覆盖的抽象方法来执行它们的逻辑,然后关闭连接。我不使用连接池,因为我的应用程序的用户和操作数量非常有限。我的问题是,如果我不关闭ResultSet、PreparedStatement和Statement,最糟糕的情况是什么如果创建它们的Connection始终关闭,我的继承servlet会创建什么? 最佳答案 Statement#close()的ja

java - 无法提取结果集

publicclassDBUtilU{privatestaticSessionscss;privatestaticSessionFactorysfactory;static{Configurationcfg=newConfiguration();cfg.addAnnotatedClass(Userdetails.class);cfg.addAnnotatedClass(Code.class);cfg.addAnnotatedClass(Messages.class);cfg.addAnnotatedClass(Comments.class);cfg.configure();newSch

java - ResultSet.TYPE_SCROLL_SENSITIVE 的行为

我对TYPE_SCROLL_SENSITIVE类型的ResultSet的行为感到困惑。我的理解是:我执行了一个返回结果集的选择查询。我打印出第一行中特定列的值。然后我执行Thread.sleep(10000),这会使程序暂停10秒。当程序处于hibernate状态时,我手动对数据库中的同一列进行了更新(通过SQL提示符)。10秒后,我再次打印结果集第一行中同一列的值。在第4步中,我希望打印的列值与第1步中打印的值不同。但我总是得到相同的值(即使我的ResultSet是SCROLL_TYPE_SENSITIVE类型)。我是不是误解了什么?下面是我使用的代码。privatevoiddoSt