[英]Sqlite3 database did not commit using php PDO
我已經將php PDO用於sqlite3數據庫。 該數據庫訪問多個應用程序,因此我在sqlite3數據庫中應用了WAL模式。
我的問題是我有一個php文件,它在sqlite3中為插入/更新數據在后端無限運行。 它的工作正常,但sqlite3為-WAL模式創建臨時文件(數據庫名稱-wal)。 但是-wal文件的大小一直在增加,如何將-WAL File數據提交到主數據庫文件中。
我已經嘗試過使用以下代碼解決此問題,但無法使用。
try {
$dbhandle = new PDO("sqlite:".SQLITE_DB_PATH.DBNAME);
return $dbhandle;
} catch (PDOException $e) {
/*echo 'Connection failed: ' . $e->getMessage();
exit;*/
}
$dbhandle->beginTransaction();
$dbhandle->query($query);
$dbhandle->commit();
$dbhandle=null;
要將WAL文件合並到主數據庫文件中,請運行PRAGMA wal_checkpoint 。
當WAL文件的大小達到4 MB時,這將自動發生 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.