如何在 MySQL 中存储一个 blob(图像)?
How to store a blob (image) in MySQL?
我正在使用 php 和 intervention
blob 的数据库格式是什么?
是否MySQL将其保存为 base64?
在将图像文件保存到数据库之前我应该做什么?
Image::make('......')->encode('data-url');
是吗?
如何存储二进制大对象 (BLOB)?
- BLOB 是一个二进制大对象,可以容纳数量可变的
数据。四种 BLOB 类型是
TINYBLOB
、BLOB
、MEDIUMBLOB
和
LONGBLOB
.
- 它们的区别仅在于它们可以容纳的值的最大长度。
- 四种TEXT类型是
TINYTEXT
、TEXT
、MEDIUMTEXT
和
LONGTEXT
。这些分别对应四种 BLOB 类型,具有相同的
最大长度和存储要求。
希望以下代码对您有所帮助:
CREATE TABLE IMAGE_TABLE(
IMG_ID INT(6) NOT NULL AUTO_INCREMENT PRIMARY KEY,
IMG_DETAILS CHAR(50),
IMG_DATA LONGBLOB,
IMG_NAME CHAR(50),
IMG_SIZE CHAR(50),
IMG_TYPE CHAR(50)
);
这将创建一个满足您要求的 table。
您还可以参考以下 SO 答案:
- Binary Data in MySQL
- store TEXT/BLOB in same table or not?
- Storing messages as BLOB (Binary Large Object) or ordinary text?
您可以参考official documentation here. This link and this link 值得一读以加深您的理解。
我正在使用 php 和 intervention
blob 的数据库格式是什么?
是否MySQL将其保存为 base64?
在将图像文件保存到数据库之前我应该做什么?
Image::make('......')->encode('data-url');
是吗?
如何存储二进制大对象 (BLOB)?
- BLOB 是一个二进制大对象,可以容纳数量可变的
数据。四种 BLOB 类型是
TINYBLOB
、BLOB
、MEDIUMBLOB
和LONGBLOB
. - 它们的区别仅在于它们可以容纳的值的最大长度。
- 四种TEXT类型是
TINYTEXT
、TEXT
、MEDIUMTEXT
和LONGTEXT
。这些分别对应四种 BLOB 类型,具有相同的 最大长度和存储要求。
希望以下代码对您有所帮助:
CREATE TABLE IMAGE_TABLE(
IMG_ID INT(6) NOT NULL AUTO_INCREMENT PRIMARY KEY,
IMG_DETAILS CHAR(50),
IMG_DATA LONGBLOB,
IMG_NAME CHAR(50),
IMG_SIZE CHAR(50),
IMG_TYPE CHAR(50)
);
这将创建一个满足您要求的 table。
您还可以参考以下 SO 答案:
- Binary Data in MySQL
- store TEXT/BLOB in same table or not?
- Storing messages as BLOB (Binary Large Object) or ordinary text?
您可以参考official documentation here. This link and this link 值得一读以加深您的理解。