我正在尝试将图像保存在mySQL数据库中,但收到一个错误,该错误为null

时间:2019-01-22 13:48:18

标签: mysql database

我正在尝试将图像插入MySQL数据库,但是我一直收到此错误; 错误代码: 1048。

  

“图像”列不能为空。这是我正在使用的代码。

 create table test_img (
              id int(10)  not null AUTO_INCREMENT PRIMARY KEY,
              name varchar(25) not null default '',
              image blob not null        
  )

 INSERT INTO test_img(ID,IMAGE) VALUES(1,LOAD_FILE ('C:\\human_centered_design_infographic.jpg'));

1 个答案:

答案 0 :(得分:0)

来自MySQL manual

  

LOAD_FILE(文件名)

     

读取文件并以字符串形式返回文件内容。要使用此功能,文件必须位于服务器主机上,必须指定文件的完整路径名,并且必须具有FILE特权。该文件必须全部可读,并且其大小小于max_allowed_pa​​cket字节。如果将secure_file_priv系统变量设置为非空目录名称,则要加载的文件必须位于该目录中。

     

如果文件不存在或由于不满足前述条件之一而无法读取,则该函数返回NULL。

您可能会收到NULL错误,因为上述条件之一是适用的。

不是所有人都可读,或者服务器未启用文件特权或文件大于max_allowed_packet字节。