mysql插入图片

mysql插入图片,第1张

插入到数据库不是个好方法,如果你确实要存储到数据库的话,修改你的sql语句,不可以直接插入的。

INSERT into person(p_id,p_name,p_sex,p_age) value("asdsadssdsadfff","addsdsa","dddd",113);

update person set p_image = LOAD_FILE('D:\incident1jpg') where p_id = "asdsadssdsadfff";

建议把'D:\incident1jpg'放在mysl的安装目录里面,避免权限问题。。。

解释:sql必须要有对 'D:\incident1jpg'文件 和相应的路径 读权限,要不也不可以的。 另外检查LOAD_FILE 函数是否被禁用。这个函数是个危险的函数,很容易利用该函数对数据库攻击。

LOAD_FILE(file_name):

读取file_name文件 并以字符串形式返回,使用这个函数时,file_name必须存在于服务器上,而且是完整路径,sql要具有file_name的读取权限,还有该文件的size必须小于数据库 max_allowed_packet的值,否则读取的值为空。如果文件不存在或者sql没有读权限,那么该函数讲返回null

首先存储主要是要保存到一个表内的字段里。要确定保存的字段类型为二进制数组等可用的类型,

然后一般的sql工具都能把变成二进制序列。到时候直接存入的时候存成2进制数列就可以。

等取出的时候用二进制流取出然后做成跟文件,然后拼接上原来存入文件的扩展名就是你刚才存入的文件。

1保存路径:这个不需要nvarchar(max),比如nvarchar(200),只要够的绝对路径长度就行,比如'F:\pictures\001jpg'

2保存:一般使用binary(max)。需要编程实现将转化成二进制码,存储,读取的时候再由程序还原成。

嗯,应该是把以文件的方式存放,然后在数据库中保存文件的路径,这样很方便管理和调用。算是最佳实践了!

如果你要把文件直接保存到数据库中,那数据存会很大,你管理维护起来就非常麻烦。

如果你真要这么做,那就把转换成二进制流进行存放。

以上就是关于mysql插入图片全部的内容,包括:mysql插入图片、怎样往SQL数据库中插入图片,最好举例说明、sql语句插入图片等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10180801.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存