PHPでPDO使ってDBにレコード挿入しようとしたときの起きたエラーまとめ
PHPでSQlite3を使うときにinsertやupdateできない事態に陥ったので忘備録。
結論から言うと
DBファイルとそのディレクトリに書き込み権限が足りていないのでchmodで権限付与
で解決しました。
attempt to write a readonly database
DBの書き込み権限が足りていませんでした。
ls -l -rw-r--r-- #書き込み権限なし chmod 777 xxxx.sqlite3 #777は乱暴 ls -l -rwxrwxr-x
unable to open database file
DBがあるディレクトリにも権限が必要。
drwxr-xr-x 2 root root 4096 Jan 26 17:33 tsumetore chmod 777 tsumetore/ drwxrwxrwx 2 root root 4096 Jan 26 17:33 tsumetore
二度あることは三度ある
権限系は1回やっても忘れたころに同じ操作して??ってなるので
ノウハウは忘れず残していこうと思います。