将文件作为varbinary数据类型插入到mysql数据库中

时间:2018-08-17 10:04:24

标签: php jquery mysql file varbinary

当我想将文件插入数据库时​​出现错误。我有具有VARBINARY(100)数据类型的file_proposal列。因此,我将保存在$ content变量中的文件转换为VARBINARY数据类型。但是我得到一个错误。

这是我的错误

  

SQLSTATE [42000]:语法错误或访问冲突:1064您的SQL语法有一个错误;请参见语法。请查看与您的MariaDB服务器版本相对应的手册,以在第1行的'VARBINARY(100)))'附近使用正确的语法

这是我的查询

$sql = $db->query("INSERT INTO `proposal` (`id_mhs`, `id_status`, `judul_proposal`, `abstraksi_proposal`, `nama_file_proposal`, `file_proposal`) VALUES ('$id_mhs',2,'$judul_proposal', '$abstraksi_proposal', '$file_proposal', (CAST('$content' AS VARBINARY(100)))");

这是我的数据库: proposal database

2 个答案:

答案 0 :(得分:0)

需要使用双引号

尝试此查询:

$sql = $db->query("INSERT INTO `proposal` (`id_mhs`, `id_status`, `judul_proposal`, `abstraksi_proposal`, `nama_file_proposal`, `file_proposal`) VALUES ('".$id_mhs."','2','".$judul_proposal."', '".$abstraksi_proposal."', '".$file_proposal."', (CAST('".$content."' AS VARBINARY(100)))");

答案 1 :(得分:0)

我解决了这个问题。这是我的查询:

$sql = $db->query("INSERT INTO `proposal` (`id_mhs`, `id_status`, `judul_proposal`, `abstraksi_proposal`, `nama_file_proposal`, `file_proposal`) VALUES ('$id_mhs', $id_status, '$judul_proposal', '$abstraksi_proposal', '$file_proposal', CONVERT('$content', BINARY))");