MySQL Blob不是通过MySQL查询而是通过Workbench GUI存储图像?

时间:2018-12-10 19:38:21

标签: mysql mysql-workbench mysql-python

我正在尝试使用ID#作为主键将员工ID图片存储到我的数据库中。 是的,我知道将图像存储到数据库会给数据库带来更大的负担,但是当我尝试这样做时:

INSERT INTO `companydatabase`.`employee_pic` (`emp_id`, `emp_pic`) values(100, LOAD_FILE('D:\\ID.png'));
INSERT INTO employee_pic values(100, LOAD_FILE('D:\ID.png'));

它回复:

Error Code: 1048. Column 'emp_pic' cannot be null

下面的列:

emp_id     int(5)     Nullable = No
emp_pic    blob       Nullable = No

|Variable_name          |Value
-----------------------------------
|max_allowed_packet     |52428800

这很奇怪,但是当我在工作台中使用GUI界面时,它会上传图像,但是它提供的脚本却没有用:

INSERT INTO `companydatabase`.`employee_pic` (`emp_id`, `emp_pic`) VALUES ('100', ?);

最重要的部分作为问号回来了?

  

注意:旁注:将使用Python而不是PHP或Js访问此数据库。我只是   需要找出MySQL查询以将ID图像上传到数据库,即   实际上,我遇到的唯一问题是我正在使用MySQL Workbench 8.0。

1 个答案:

答案 0 :(得分:0)

LOAD_FILE()返回NULL。这可能是因为文件的路径不正确,或者是因为该文件不存在于MySQL服务器上,或者是因为您的MySQL用户没有FILE特权。