[英]PHP PDO connecting to SQLITE db
因此,今天早上,我嘗試使用PDO連接到SQLite數據庫並創建一個表。 首先,我創建一個名為db.sqlite的文件,然后創建連接並執行create table
查詢,但是execute
pdo函數始終返回false
。
$pdo = new PDO("sqlite:db.sqlite");
$STH = $pdo->prepare(
'CREATE TABLE "users" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL ,
"full_name" VARCHAR,
"description" TEXT,
"token" INTEGER);
');
$STH->execute();
因此,我接下來db.sqlite
從連接中刪除db.sqlite
並替換為:memory:
以在內存中創建一個數據庫,該數據庫運行良好。
$pdo = new PDO("sqlite::memory:");
所以我很困惑,為什么我可以使用:memory:
而不是文件,如何解決?
之所以不起作用,是因為文件database.sqlite
位於/var/www/
目錄中,這為其賦予了自動RW-RW-R--
權限,這意味着您將無法更改的結構。該文件,我做了兩件事,它起作用了,首先,我更改了www目錄的所有者。
chown -R <your username>:<your username> www/*
然后更改項目目錄的權限
chmod -R 777 <project>/*
它為我工作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.