Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL和Java:获取大小和批处理限制之间的差异_Java_Mysql - Fatal编程技术网

MySQL和Java:获取大小和批处理限制之间的差异

MySQL和Java:获取大小和批处理限制之间的差异,java,mysql,Java,Mysql,当我修改使用Java进行MySQL检索批更新的代码时,我产生了这个疑问。 我的理解是,fetch size是ResultSet对象中的最大行数,Batch Limit是可以添加到批中以供批执行的select/insert/update查询数。如果我错了,有人能纠正我吗 谢谢。你几乎是对的。然而,我们必须补充一点 给JDBC驱动程序一个提示,告诉它应该添加的行数 从数据库中获取 而批处理限制则与可以插入或更新的行数有关 旁注: 您也可以将检查作为良好的阅读 结果集 默认情况下,结果集被完全检索并存

当我修改使用Java进行MySQL检索批更新的代码时,我产生了这个疑问。 我的理解是,fetch size是ResultSet对象中的最大行数,Batch Limit是可以添加到批中以供批执行的select/insert/update查询数。如果我错了,有人能纠正我吗


谢谢。

你几乎是对的。然而,我们必须补充一点

给JDBC驱动程序一个提示,告诉它应该添加的行数 从数据库中获取

而批处理限制则与可以插入或更新的行数有关

旁注:

您也可以将检查作为良好的阅读

结果集

默认情况下,结果集被完全检索并存储在内存中。 在大多数情况下,这是最有效的操作方式,并且由于 MySQL网络协议的设计更易于实现。如果 您使用的结果集包含大量行或行 较大的值,并且无法在JVM中为 如果需要内存,您可以告诉驱动程序将结果流式返回 一次一排


我认为我们可以在Java中使用fetchSize和MySQL表,如本文所述。您能澄清一下吗。@user1930402:-我们确实可以使用它,但这只是按照文件的规定给出一个提示。谢谢。让我试试这个。@user1930402:-不客气。您可以这样使用它:
PreparedStatement stmt=connection.prepareStatement(qry);stmt.setFetchSize(1000);stmt.executeQuery()阅读此链接也有助于我:。请考虑这篇文章[链接]