MySQL 5.5 LONGBLOB 列数据对于列“x”太长;在第 1 行

发布于 2025-01-04 02:18:11 字数 438 浏览 0 评论 0原文

我的 MySQL 数据库中有一个列将图像存储为字节数组。

我正在尝试更新一行以插入新图像。新图像为 163K,当我将其转换为 byte[] 时,数组中的元素数量为 167092。当我运行执行更新的存储过程时,出现错误“Data too long for第 1 行的“x”列。 数据库中已有一个图像,转换后该图像具有 8844 个 byte[] 元素。

根据我的理解,我应该有大约 8844 个 byte[] 元素。 正在

我尝试更新 my.ini 文件以使 MAX_ALLOWED_PACKETS=16M,甚至尝试使用 100M

​​使用 MySQL .NET 连接器库来执行我的存储过程。

我 这个问题?我知道我可以存储图像路径,而不是将图像直接存储到数据库中,但我想知道如何解决我当前的问题,并在尝试更改我的方法之前仍然先将图像存储在数据库中。

I have a column in my MySQL database that stores images as a byte array.

I am trying to update a row to insert a new image. The new image is 163K, and when I convert it to a byte[], the number of elements in the array is 167092. When I run the stored procedure that does the update, I get an error "Data too long for column 'x' at row 1. I already have an existing image in the database that has 8844 byte[] elements when converted.

The column datatype is LONGBLOB. From my understanding, I should have appox 4Gb to work with.

I have tried updating my my.ini file to make the MAX_ALLOWED_PACKETS=16M and I even tried 100M.

I am using the MySQL .NET Connector libraries to execute my stored procedures.

Does anyone have any ideas on how to fix this issue? I know I could store the image paths instead of storing the images directly into the database. But I would like to know how to solve my current issue and still store the images in the database first before trying to change my approach.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

难以启齿的温柔 2025-01-11 02:18:11

我遇到了完全相同的问题...

在我的例子中,我通过 TEXT 参数传递 LONGBLOB,因为我想在存储过程中使用 CONCAT 来创建动态 SQL。

解决方案很简单,将 TEXT 更改为 LONGTEXT。就是这样 :)
这确实花了一些时间来弄清楚......

希望即使在近三年后我也能提供帮助。

I've had exactly the same problem...

In my case I was passing the LONGBLOB via a TEXT parameter since I wanted to use CONCAT inside the stored procedure in order to create dynamic SQL.

The solution was simply to change TEXT into LONGTEXT. That's it :)
That really took some time to figure out...

Hope I could help even after almost three years.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文