千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > Mysql怎么把图片转换的base64以字符串的类型存入数据库?

Mysql怎么把图片转换的base64以字符串的类型存入数据库?

来源:千锋教育
发布人:xqq
时间: 2023-10-13 08:05:09 1697155509

一、Mysql怎么把图片转换的base64以字符串的类型存入数据库

MySQL没有内置功能可以实现此功能,但可以使用以下步骤实现:1. 使用PHP或其他编程语言将图像转换成Base64字符串;2. 将Base64字符串存储在MySQL数据库中的VARCHAR或TEXT字段中。

下面是一个示例:

python

Copy code

import base64

# 读取图片并转换为 base64 编码

with open(“image.jpg”, “rb”) as image_file:

encoded_string = base64.b64encode(image_file.read()).decode(‘utf-8’)

# 将 base64 编码字符串存储到数据库中

cursor.execute(“INSERT INTO images (image) VALUES (%s)”, (encoded_string,))

但不建议存储图片,音视频类的真实数据到数据库内。一般都将这些数据存储到对象存储上,然后记录一些位置信息,使用的时候在应用程序上面写逻辑获取。

硬要这么做就是用blob 这种格式直接存图片二进制更简单粗暴点

延伸阅读:

二、在数据库中存储图像的常用方法

在数据库中存储图像的常用方法是在存储数据之前将图像转换为base64数据。这个过程将增加 33% 的大小。或者,可以将图像直接存储为 BLOB;例如:

$image = new Imagick(“image.jpg”);

$data = $image->getImageBlob();

$data = $mysqli->real_escape_string($data);

$mysqli->query(“INSERT INTO images (data) VALUES (‘$data’)”);

然后用

显示图片

使用后一种方法,我们节省了 1/3 的存储空间。为什么在 MySQL 数据库中将图像存储为 base64 更常见?

关于将图像存储在数据库中的优缺点有很多争论,大多数人认为这不是一种实用的方法。无论如何,在这里我假设我们将图像存储在数据库中,并讨论这样做的优异方法。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT