为什么我需要执行两次语句?

时间:2018-01-14 07:13:39

标签: php sqlite pdo

$sql = "SELECT firstName , lastName FROM People WHERE born='1934'" ;
$stmt = $db->prepare($sql);
echo "<p>Execute the SQL-statement:<br><code>$sql</code><p>";
$stmt->execute();
// Get the results as an array with column names as array keys

$res = $stmt->fetchColumn();
$stmt->execute();
$res2 = $stmt->fetchColumn(1);




$ANSWER = $res." ".$res2;

如果我删除第二个execute();语句,则$res2变量为空。

为什么?当我已经检索过一次/执行语句的结果时。

如果我输入1作为第一个fetchColumn();中的参数我得到lastName数据库列,那么结果已经存在。

我使用fetchColumn();的原因是我需要将结果作为字符串而不是数组。我只是无法理解为什么没有第二次执行它不起作用,似乎结果集被破坏或者在第一次获取之后我需要再次执行它?这听起来很奇怪。

0 个答案:

没有答案