gpt4 book ai didi

sqlite - 如何以及何时在SQLite中执行PRAGMA语句?

转载 作者:行者123 更新时间:2023-12-03 19:15:43 26 4
gpt4 key购买 nike

我正在使用SQLite。我只是想知道如何以及何时在sqlite中执行PRAGMA语句。

例如,我要执行:

PRAGMA schema.journal_mode = OFF;


基于 https://www.sqlite.org/pragma.html#pragma_journal_mode上的文档,我想我应该在sqlite3_open()之后和创建任何表之前执行它。因此,我只是调用sqlite3_prepare_v2()和sqlite3_step()来执行上述PRAGMA,以提高数据库操作的性能。但是,在PRAGMA声明之后,似乎没有任何改变,并且性能没有得到改善。

在这种情况下,如何知道PRAGMA语句是否已执行并生效?

谢谢

最佳答案

许多Pragma会返回设置值,此外,仅使用Pragma,不带参数将返回当前值(在某些情况下,只有后者会返回状态/当前值)。

PRAGMA journal_mode = OFF将返回关闭结果。
PRAGMA journal_mode将返回当前值而不影响它。

因此,就像查询一样,结果集中的列名在许多情况下将与要执行的编译指示相同。返回多个列的数据库(例如database_list)将返回特定于编译指示的列。

例如

PRAGMA journal_mode;
PRAGMA journal_mode = OFF;
PRAGMA journal_mode;
PRAGMA journal_mode = DELETE;
PRAGMA journal_mode;


结果是 :-

enter image description here

关于sqlite - 如何以及何时在SQLite中执行PRAGMA语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53027770/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com