HSQLDB + SQuirreL:按块读取数据
Posted
技术标签:
【中文标题】HSQLDB + SQuirreL:按块读取数据【英文标题】:HSQLDB + SQuirreL: reading data by block 【发布时间】:2016-03-16 13:48:09 【问题描述】:我正在从 Java 类中运行 HSQLDB 的实例:org.hsqldb.Server
的实例已初始化并设置为仅在内存中,没有其他配置;然后,它用于填充可从正在运行的 jvm 外部访问的数据。
使用 SQuirreL 设置为“读取,块大小”,我连接到 HSQLDB 服务器并查询数据:似乎所有从查询返回的行都加载到客户端内存中,然后按块大小显示。相反,使用 Oracle(例如)我看到客户端仅下载显示的行,其他仅在列表向下滚动时下载。是否可以强制 HSQLDB 客户端以相同的方式操作?
【问题讨论】:
【参考方案1】:使用 java.sql.Statement 对象执行查询。这有一个setFetchSize(n)
方法,指示一次获取的行数。 HSQLDB 在服务器模式下使用时支持这一点。它返回包含指定提取大小的块中的行。
应用程序(在本例中为 SQuirrel)应在 Statement 对象上显式调用 setFetchSize(n)
。
【讨论】:
以上是关于HSQLDB + SQuirreL:按块读取数据的主要内容,如果未能解决你的问题,请参考以下文章
HSQLDB:奇怪的“唯一约束或索引违规”,从 CSV 读取数据
通过 squirrel sql 连接到 hive/spark sql 时读取超时
为啥在读取数据库 hsqldb 中的 blob 时抛出 java.lang.IndexOutOfBoundsException