jdbc sqlite性能 - 查询异常缓慢

时间:2013-01-21 18:24:04

标签: java sqlite jdbc

我正在尝试为我的基于java的软件的用户提供使用sqlite而不是默认MySQL的选项,因为有些用户不知道MySQL是什么,或者如何安装,或者不想。 / p>

我使用sqlite工作正常,但查询时间非常慢。使用jdbc的java中的SELECT查询返回结果的时间至少是使用MySQL时的三倍。

但是,直接在sqlite控制台中运行的相同查询在几毫秒内完成。它必须是导致速度减慢的jdbc连接。

有什么建议我可以做些什么来提高速度?我听说过用Xerial版本替换驱动程序,但我不确定如何做到这一点。我这样做是为了测试,但这显然是我怀疑我们可以要求我们的用户做的事情 - 如果他们反对安装mysql他们不想要为sqlite切换驱动程序......

1 个答案:

答案 0 :(得分:0)

您的驱动程序通常应与您的程序分发一起安装。 (与您的应用程序包装sqlite的方式相同)这样,驱动程序对您的用户是透明的(他/她不知道幕后发生了什么),您可以使用其他驱动程序。

与某个rdbms捆绑在一起的驱动程序btw会非常慢,这似乎有点奇怪。您可以尝试浏览sqlite日志以查看幕后发生的情况。 (我甚至会推荐它)