从java代码将文件加载到数据库
查询运行,但未上载文件 也试过从java代码将文件加载到数据库,java,mysql,database,file-upload,Java,Mysql,Database,File Upload,查询运行,但未上载文件 也试过 st4.executeUpdate("insert into model (category,subcategory,modelname,taxid,image,filename) values ('"+forCat+"','"+sel+"','"+model+"','"+taxid+"',load_file('"+f.getAbsolutPath()+"'),'"+f.getName()+"')"); 这里f是从文件选择器获取的文件对象 查询在控制台上运行,没
st4.executeUpdate("insert into model (category,subcategory,modelname,taxid,image,filename)
values ('"+forCat+"','"+sel+"','"+model+"','"+taxid+"',load_file('"+f.getAbsolutPath()+"'),'"+f.getName()+"')");
这里f是从文件选择器获取的文件对象
查询在控制台上运行,没有任何错误,但文件未上载,图像字段为空
GRANT FILE ON *.* TO 'root'@'localhost';
它工作得很好。您收到任何错误吗?回答这个问题的信息绝对太少了。文件大小是否大于数据包允许的最大值?尝试使用30kb、320kb和800kb的文件大小无效。。表中的值为NULL,其他字段已成功插入。我假设该文件与mysql托管在同一台服务器上。。。你确定这条路是正确的吗?现在是老年人的问题。。为什么\\或/可以工作,但不能使用windows默认的单个反斜杠…您需要\\,因为MySQL中的字符串处理是非标准的(就SQL而言)。
insert into model (category,subcategory,modelname,taxid,image,filename) values ('NEW','NEWSUB','CRAZY TEST2','5',load_file('D:\Users\sams\Desktop\image006.jpg'),'image006.jpg');
insert into model
(category,subcategory,modelname,taxid,image,filename)
values
('SSAS','SSAS SUB','CRAZY 10','5',load_file('D:\\Users\\sams\\Desktop\\image006.jpg'),'image006.jpg');