当前位置:  开发笔记 > 前端 > 正文

是否有工具来分析sqlite查询?

如何解决《是否有工具来分析sqlite查询?》经验,为你挑选了2个好方法。

我正在使用SQLite数据库,并希望加快我的查询,可能是索引或完全重组它们.

是否有一个工具来分析查询,这可能有助于我决定哪些方面正在放慢速度?

我知道我可以在SQLite管理员这样的工具中输入查询来计算它们,但我正在寻找比这更有系统性的东西 - 也许是在后台的东西,看着我输入的所有查询期间,给出任何瓶颈的细分.



1> 小智..:

这只会回答问题的一部分(不幸的是,这是最无益的部分).

我搜索了这个,因为我正在寻找时间查询的东西,而sqlite3客户端有一个计时器元命令.

sqlite> .timer

从那里开始,所有查询结果都会附加cpu计时器统计信息.希望这有助于至少一点点.


虽然这不能回答这个问题,但我敢打赌,这个页面中有50%的人正在寻找

2> Samuel Neff..:

你在这里有各种各样的问题.要查看运行的查询以及每个查询需要多长时间,您需要修改sqlite3.dll(如果应用程序链接到该应用程序)或者如果它是您自己的应用程序,则可以更轻松地将其写入代码(我们这样做并且所有查询,交易,时间等).

对于个别查询分析,您可以使用EXPLAIN.它不会告诉您查询中各个步骤的时间,但它会告诉您查询的执行方式.

http://www.sqlite.org/lang_explain.html

SQL语句前面可以是关键字"EXPLAIN"或短语"EXPLAIN QUERY PLAN".这两种修改都会导致SQL语句表现为查询,并返回有关如果省略EXPLAIN关键字或短语后SQL语句将如何操作的信息.

当EXPLAIN关键字本身出现时,它会使该语句表现为一个查询,该查询返回如果没有EXPLAIN关键字,它将用于执行命令的虚拟机指令序列.当EXPLAIN QUERY PLAN短语出现时,该语句返回有关将使用哪些索引的高级信息.

EXPLAIN和EXPLAIN QUERY PLAN的输出仅用于交互式分析和故障排除.输出格式的详细信息可能会从SQLite的一个版本更改为下一个版本.应用程序不应使用EXPLAIN或EXPLAIN QUERY PLAN,因为它们的确切行为是未记录的,未指定的和可变的.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有