1

当我想将文件插入数据库时​​出现错误。我有具有 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)))");

这是我的数据库: 提案数据库

4

2 回答 2

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)))");
于 2018-08-17T10:16:06.257 回答
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))");
于 2018-08-17T12:05:36.757 回答