2013-06-20 373 views
3

我試圖通過PDO擴展的Phar歸檔內訪問SQLite數據庫,但我發現了錯誤:SQLite數據庫

exception 'PDOException' with message 'SQLSTATE[HY000] [14] unable to open database file'

PHP手冊中說,這是可以修改裏面的存檔文件。我該如何解決它?

+1

SQLite需要對數據庫文件進行隨機訪問,能夠增長等。zip/phar歸檔中的文件只能被重寫,而不能被塊更新。沒有骰子。 – mario

+2

是否有任何指令來設置數據庫只讀?事實上,我只需要讀取權限。 – stil

回答

1

經過一番研究,我意識到,這個問題可以通過一點點破解來解決。

  1. 數據庫文件複製到系統臨時目錄
  2. 連接到PDO數據庫副本,做您的操作與修改後的副本
  3. 覆蓋原始數據庫文件。

不是非常可靠的解決方案 - 您需要小心未處理的錯誤或異常,因爲您可能會失去更改。