完整错误:
Fatal Error: Uncaught exception 'PDOException' with message
'SQLSTATE[HY000]: General error -1 from storage engine'
in C:\MyApacheDir\MyPHPFile.php:33
第33行是我的PDO准备声明的->execute()
。这种行为并不总是发生;执行完全相同的操作时,可能不会发生。
我的查询:
// Make new permissions
$sql = "INSERT INTO permissions (
doc_id,
user_id,
write_access
) VALUES (
:doc_id,
:user_id,
:write_access
);";
$stmt = $dbConn->prepare($sql);
ForEach ($permitArr as $permit) {
$stmt->bindValue(":doc_id", $_POST['doc_id'], PDO::PARAM_INT);
$stmt->bindValue(":user_id", $permit[0], PDO::PARAM_INT);
$stmt->bindValue(":write_access", $permit[1], PDO::PARAM_INT);
$stmt->execute();
}
其中permitArr
包含Array[index][info]
形式的权限数组,其中[info]
分别为0或1,对应于用户和访问级别。
如上所述,这种错误有时只会发生;完全相同的查询的其他迭代(字面上,传递相同的信息)工作正常。
有人知道-1
错误代码是由什么引起的吗?也许它只是低劣的搜索技能,但我无法在任何地方找到它。
我正在使用IE8中的MySQL 5.6处理Apache 2.2本地主机。
答案 0 :(得分:1)
似乎很可疑。我无法找到该号码的错误,因此通常意味着有一个外部因素在起作用。我会尝试以下方法:
1。)创建一个新表并尝试新表上的代码。
2。)使用新表创建一个新模式并再次尝试代码。
3.。)在您的驱动器上运行chkdsk以确保没有任何群集问题。
4。)重启。