php - 使用 PHP 更新 MySQL 中的 blob

标签 php mysql sql blob

我无法弄清楚我的 SQL 出了什么问题。以下是生成查询的 PHP 脚本:

function SaveData($data,$id,$file)
{
    $handle = fopen($file['file']['tmp_name'], 'r');
    $datafile = fread($handle, filesize($file['file']['tmp_name']));
    $datafile = mysql_real_escape_string($datafile);
    fclose($handle);        
    $query= "UPDATE data SET Text='" . $data['Text'] . "', Binary='$datafile', Tag='" . $data['Tag'] . "', name='" . $file['file']['name'] . "',type='" . $file['file']['type'] . "', size='" . $file['file']['size'] . "' WHERE Object_ID=".$id;

    mysql_query($query,$this->connection) or die(mysql_error());
}

如果出现以下错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Binary='%PDF-1.5\r%âãÏÓ\r\n37 0 obj\r<

谁能给我指点一下吗?

最佳答案

BINARYreserved word在 mySQL 中。

您需要使用反引号或更改列名称。

`Binary` = '$datafile'

关于php - 使用 PHP 更新 MySQL 中的 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5183157/

相关文章:

javascript - 在 iOS 浏览器上将商品添加到购物车时播放声音

php - "error": "array_merge(): Expected parameter 1 to be an array, null given"

php - 如何在php中获取字符串中最后一个字母的位置?

mysql - 用户文件数据库设计

sql - 使用触发器和插入过程将数据插入 View 时如何避免 "blank"插入?

PHP move_uploaded_file() 问题

mysql - 避免子查询

php - 如何在sql中搜索包含字符串的标题并将结果推送到数组中

c# - mysql批量插入一个文本文件

SQL 甲骨文 : how to find records maching a particular id in the column