繁体   English   中英

检查 JDBC select 查询批量大小

[英]Inspect JDBC select query for batch size

我有一个包含 >100K 记录的数据库,我想批量获取结果。 我正在使用 SQL 服务器并且 fetchsize 设置为 50。如何确保只检索 50 条记录,然后再检索下 50 条记录。

我尝试使用 P6SPY 调试 SQL,而 output 显示了对结果集中 n 条记录的 n 次查询。 我想检查生成的 SQL 并确保应用了 fetchsize。

请帮忙。

我认为 P6SPY 是应用程序级工具,即它位于应用程序和原始 JDBC 驱动程序之间,因此无法监视 JDBC 驱动程序与数据库服务器之间的交互。

如果您怀疑 JDBC 驱动程序不遵守 fetchsize,您将不得不使用网络数据包嗅探器(例如 wireshark),使用数据库服务器本身中的任何请求日志记录或驱动程序公开的任何调试日志记录。

这是我想出的:SQL 服务器 JDBC 驱动程序默认将所有记录提取到 memory。将 selectMethod selectMethod=cursor添加到连接 url 字符串可以解决问题,现在将使用批处理大小。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM