将字节数组作为图像或文件从Java写入MySQL数据库
我想将文件保存到我的MySQL数据库
我可以从文件中获取字节数组并将其存储在数据库中吗?或者有没有其他方法可以直接将文件保存到MySQL数据库中
我应该使用什么字段类型将字节数组保存到mysql,并请给出如何插入字节数组的示例查询
你可以在下面搜索框中键入要查询的问题!
我想将文件保存到我的MySQL数据库
我可以从文件中获取字节数组并将其存储在数据库中吗?或者有没有其他方法可以直接将文件保存到MySQL数据库中
我应该使用什么字段类型将字节数组保存到mysql,并请给出如何插入字节数组的示例查询
# 1 楼答案
您可以在MySQL中使用
varbinary
数据类型进行此操作。它与Java中的类型byte[]
匹配# 2 楼答案
我想您正在寻找二进制大对象(BLOB)。这应该允许您将字节流保存到数据库中This在MySQL和Java中使用BLOB时,这个示例应该为您指明了正确的方向
也就是说,人们通常不建议将整个文件存储到数据库中,通常建议将文件存储在文件系统中,而只将URI存储在数据库中。您可以检查thisprevious SO Post,查看何时应该使用BLOB
# 3 楼答案
1)是的。使用FileInputStream.read(byte[])将文件读入
byte[]
。因为图像由二进制数据组成,所以使用byte[]
(而不是字符串)2)数据库中的字段应为
blob
,这非常适合于byte[]
。您可以使用PreparedStatement
插入它: