基本的に、このスクリプトは実行に時間がかかり、タイムアウトすることもあり、データベースの周りに半完全なデータが残っています。(はい、完璧な世界では、コミットとロールバックを実装する代わりにそれを修正することを知っていますが、そうしないことを余儀なくされています)
これが私の基本的なコードです(簡単にするために簡略化しています):
$database = new PDO("mysql:host=host;dbname=mysql_db","username","password");
while (notDone())
{
$add_row = $database->prepare("INSERT INTO table (columns) VALUES (?)");
$add_row->execute(array('values'));
//PROCESSING STUFF THAT TAKES A LONG TIME GOES HERE
}
$database = null;
したがって、私の問題は、そのwhileループ内のプロセス全体が完了していない場合、挿入された行がそこに留まらないようにすることです。whileループの最初と最後でコミット/ロールバックを使用してこれを行うことができると思いますが、方法がわかりません。