如何使用PDO预处理语句从MySQL数据库中获取单个记录?

时间:2012-06-08 13:52:18

标签: mysql pdo prepared-statement

如何使用PDO预处理语句从MySQL数据库中获取一条记录

以“旧”的方式,我可以使用:

$MyCaption = mysql_result(mysql_query("SELECT * FROM `photos` WHERE `id` = '56465843362'"),0,"caption");

PDO准备的声明等同于什么?

我试过了:

$id = '56465843362';
$query = $db->prepare("SELECT `caption` FROM `photos` WHERE `id` = ?");
$query->execute(array($id));
$caption = $query->fetchColumn();

......但这是错误的。

1 个答案:

答案 0 :(得分:1)

SELECT `caption` FROM `photos` WHERE `id` = ? Limit 1

限制关键字限制为您想要的行数。但是如果没有order by子句,您的记录将被随机提取。如果它似乎工作正常,不要认为它会一直这样。 SQL标准不保证默认提取的行的顺序。