php 查询mysql blob类型
时间: 2023-11-01 21:16:02 浏览: 235
当查询 MySQL 中的 BLOB 类型数据时,我们需要使用 BINARY 运算符。以下是一个示例代码:
```php
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
// 检查连接是否成功
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
// 查询 BLOB 数据
$sql = "SELECT * FROM mytable WHERE id = 1";
$result = mysqli_query($conn, $sql);
// 检查查询结果
if (mysqli_num_rows($result) > 0) {
// 输出数据
while($row = mysqli_fetch_assoc($result)) {
echo "姓名: " . $row["name"]. " - 图片: " . '<img src="data:image/jpeg;base64,'.base64_encode( $row["image"] ).'"/>';
}
} else {
echo "0 结果";
}
// 关闭连接
mysqli_close($conn);
```
在上面的示例中,我们使用了 `SELECT` 语句来查询 BLOB 数据,并在结果集中使用 `mysqli_fetch_assoc()` 函数来获取每一行数据。然后,我们将 BLOB 数据转换为 base64 编码的字符串,并将其用作图像的源。
需要注意的是,如果你需要在查询中使用 BLOB 数据的比较运算符(如 `<`、`>`、`=` 等),你需要在运算符前使用 BINARY 关键字,以便 MySQL 可以正确处理二进制数据。例如:`SELECT * FROM mytable WHERE BINARY image = 'binary data'`。
阅读全文