簡體   English   中英

java sqlite JDBC中ResultSet.next()的性能不佳

[英]Bad performance of ResultSet.next() in java sqlite JDBC

從 sqlite 數據庫中檢索數據時,我遇到了ResultSet.next()的性能問題。 我正在使用org.sqlite.JDBC驅動程序。 我嘗試設置 statement/ ResultSet.fetchSize() ,但這也不起作用。

操作圍繞25秒持續,當我在使用SQL語句的字符串paramater WHERE子句(與在非字符串參數WHERE ,它持續時間只有4秒)。

我發現使用某些驅動程序可以在 URL 中將send string parameter as unicode = false設置send string parameter as unicode = false ,這應該可以提高性能。 但是,我無法找到如何使用 SQLite 連接進行設置的方法。

有人可以幫我解決這個問題嗎?

在 SQLite 中,結果行是按需計算的。 (SQLite 不是客戶端/服務器數據庫,因此沒有通信開銷。)

因此,當next()很慢時,這僅意味着您的查詢很慢,並且數據庫必須進行大量 I/O 和/或許多計算,直到它可以返回下一行。

為了加快速度,您必須改進數據庫設計、查詢或硬件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM