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