beginTransaction()是否与prepare()一起使用?

时间:2013-05-28 01:51:24

标签: php mysql pdo

我有以下代码:

$db->beginTransaction();
$achievement_name = $db->prepare("SELECT `achievement_name` FROM `achievement_names` WHERE `id` = :a_id");
$achievement_name->bindValue(":a_id",$r['achievement_id'],PDO::PARAM_INT);
$achievement_desc = $db->prepare("SELECT `achievement_desc` FROM `achievement_names` WHERE `id` = :a_id");
$achievement_desc->bindValue(":a_id",$r['achievement_id'],PDO::PARAM_INT);
$achievement_image = $db->prepare("SELECT `image` FROM `achievement_names` WHERE `id` = :a_id");
$achievement_image->bindValue(":a_id",$r['achievement_id'],PDO::PARAM_INT);
$db->commit();

PDO可以实现吗?要使用$ db-> prepare()和bindValue()函数然后提交它们?它似乎对我不起作用,因为它们正在返回bool(假)。

1 个答案:

答案 0 :(得分:0)

事务用于一致的读取或写入数据。 “准备”不会读取或写入任何数据。

所以,答案是:是的,beginTransaction()与prepare()一起正常工作,但它没用。