【问题标题】:Data Type for Images in LaravelLaravel 中图像的数据类型
【发布时间】:2026-01-14 07:35:02
【问题描述】:

我目前正在对图像使用二进制数据类型。

$table->binary('image');

当我尝试保存大小超过 64kb 的图像时出现错误。

#1366 - 不正确的整数值:'' for column 'pet_owner_id' at row 1.

在 MySQL 中,该数据类型显示为 blob

【问题讨论】:

  • 通常情况下,您会将图像存储在 filesystem 的某个地方,而只是将 path 存储在数据库中。

标签: mysql laravel laravel-5 sqldatatypes


【解决方案1】:

图像$table->binary('image'); //for blob的数据类型

存储二进制数据 二进制数据(例如图像)会使您的表格膨胀并且不能直接从数据库中显示,以下列类型是为二进制数据设计的:

  • TINYBLOB:最多 255 个字节
  • BLOB:最多 64KB
  • MEDIUMBLOB:最大 16MB
  • LONGBLOB:高达 4 GB

BLOB 代表二进制大对象

【讨论】: