使用SQlite,您如何显示当前的PRAGMA设置?

Chr*_*man 9 php sqlite pdo

使用SQlite,您如何显示当前的PRAGMA设置?

在设置它们时,它们是持久的,还是需要为每个查询设置它们?

克里斯

Don*_*ghn 8

在最简单的形式中,可以通过简单地使用语法执行sql语句来获得当前的pragma设置PRAGMA <command>.例如,在使用PDO在PHP中进行调试时,您可以执行以下操作:

$db = new PDO("sqlite: myDb.sqlite");
$synchronous = $db->query("PRAGMA synchronous")->fetchColumn();
Run Code Online (Sandbox Code Playgroud)

要设置值,请使用PRAGMA <command> = <value>.然而,没有返回值(所以不要打扰fetch任何东西).

$db->query("PRAGMA synchronous = OFF");
Run Code Online (Sandbox Code Playgroud)

关于命令是否持久的第二个问题,正如turlando所说,没有一般性答案,因为它取决于发布的PRAGMA声明.只需检查sqlite编译指示文档即可.如果您不确定,只需使用上面的代码检查您的设置是否仍然存在.