MySQL_STMT_FETCH示例
时间: 2024-07-18 20:01:15 浏览: 159
MySQL sample
MySQL_STMT_FETCH是一个常用于处理预处理语句(PreparedStatement)的函数,它用于从结果集中获取下一行的数据。在PHP的mysqli或PDO_MYSQL驱动中,`mysqli_stmt_fetch()` 和 `PDOStatement::fetch()` 属于这个用途。这里有一个简单的示例:
```php
// 首先,准备SQL查询并绑定参数
$stmt = $conn->prepare("SELECT * FROM users WHERE username=?");
$stmt->bind_param("s", $username);
// 绑定变量值
$username = "JohnDoe";
$stmt->execute();
// 设置获取模式(默认是MYSQLI_BOTH,可以设置为MYSQLI_NUM、MYSQLI_ASSOC等)
$stmt->setFetchMode(MYSQLI_ASSOC); // 获取关联数组
// 使用循环来遍历结果集
while ($row = $stmt->fetch()) {
echo "ID: " . $row['id'] . ", Name: " . $row['name'] . "<br>";
}
// 关闭预处理语句
$stmt->close();
```
在这个例子中,`$stmt->fetch()`会连续执行直到结果集结束,每次都会返回下一行数据,如果到了最后一行,则再次调用将不会返回新的行。
阅读全文