我有时会收到以下错误:
SQLSTATE[HY000] [14] unable to open database file
我使用打开数据库
new PDO("sqlite:database/datbase.db","","",array(
PDO::ATTR_PERSISTENT => true
));
每次我想从数据库读取或写入数据时。打开的过程是如下函数:
function opendatabase(){
try{
return new PDO("sqlite:database/database.db","","",array(
PDO::ATTR_PERSISTENT => true
));
}catch(PDOException $e){
logerror($e->getMessage(), "opendatabase");
print "Error in openhrsedb ".$e->getMessage();
}
}
一段时间后(有时一个多小时,有时几分钟后,我在帖子开头收到错误消息。如何防止此类错误?
最佳答案
如果有人在重用 PDO 连接时遇到相同的消息并且仍然有问题,那可能是因为您正在存储从 fopen() 获得的图像而忘记了 fclose() 语句。在这种特殊情况下,错误消息确实具有误导性。
这是我在几天的故障排除后设法解决的相同错误消息的问题。
SQLSTATE[HY000] [14] : can't open database because too many connections are already opened
关于php - 如何防止 SQLITE SQLSTATE[HY000] [14]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25668156/