0

完全なエラー:

Fatal Error: Uncaught exception 'PDOException' with message 
'SQLSTATE[HY000]: General error -1 from storage engine'
in C:\MyApacheDir\MyPHPFile.php:33

33行->execute()目は私のPDOプリペアドステートメントです。この動作は常に発生するとは限りません。まったく同じアクションを実行する場合、それは起こらない可能性があります。

私の質問:

// 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();
}

ここには、ユーザーとアクセスレベルにそれぞれ対応する0または1の形式のpermitArrアクセス許可の配列が含まれます。Array[index][info][info]

前述のように、このエラーはたまにしか発生しません。まったく同じクエリの他の反復(文字通り、同じ情報が渡される)は正常に機能します。

-1エラーコードの原因を知っている人はいますか?検索スキルが劣っているだけかもしれませんが、どこにも見つかりませんでした。

IE8のMySQL5.6でApache2.2ローカルホストを使用しています。

4

1 に答える 1

1

怪しいようです。その数字にはエラーが見つからないので、通常は外的要因が働いていることを意味します。私は次のことを試します:

1.) 新しいテーブルを作成し、新しいテーブルでコードを試します。

2.) 新しいテーブルで新しいスキーマを作成し、コードを再試行してください。

3.) ドライブで chkdsk を実行して、クラスターに問題がないことを確認します。

4.) 再起動します。

于 2013-03-20T15:05:08.530 に答える