使用事务更新多行时,PDO不起作用

时间:2015-05-10 15:42:46

标签: pdo transactions rows updating

我将使用pdo实例同时执行多行表。

我试过了:

try {
    $pdo->beginTransaction();
    $query = $pdo->prepare('UPDATE forum_config SET config_value = ? WHERE config_name = ?');
    $query->execute(array('activate_avatar', $_POST['activate_avatar']));
    $query->execute(array('activate_mp', $_POST['activate_mp']));
    $query->execute(array('activate_sign', $_POST['activate_sign']));
    $query->execute(array('allow_register', $_POST['allow_register']));
    $query->execute(array('avatar_max_height', $_POST['avatar_max_height']));
    $query->execute(array('avatar_max_size', $_POST['avatar_max_size']));
    $query->execute(array('avatar_max_width', $_POST['avatar_max_width']));
    $query->execute(array('cookies_expires', $_POST['cookies_expires']));
    $query->execute(array('domain_name', $_POST['domain_name']));
    $query->execute(array('forum_style', $_POST['forum_style']));
    $query->execute(array('post_flood_time', $_POST['post_flood_time']));
    $query->execute(array('post_max_size', $_POST['post_max_size']));
    $query->execute(array('post_max_smilies', $_POST['post_max_smilies']));
    $query->execute(array('session_time_out', $_POST['session_time_out']));
    $query->execute(array('sign_max_size', $_POST['sign_max_size']));
    $query->execute(array('site_closed_reason', $_POST['site_closed_reason']));
    $query->execute(array('site_open', $_POST['site_open']));
    $query->execute(array('topic_flood_time', $_POST['topic_flood_time']));
    $query->execute(array('topic_max_size', $_POST['topic_max_size']));
    $pdo->commit();
}
catch(Exception $e) {
    $pdo->rollback();
    die('Erreur : '.$e->getMessage());
}
unset($query);

但它没有做任何事情。问题是什么?谢谢你的帮助

0 个答案:

没有答案