Why is only 64kB of data being saved in my MySQL data column?

旧城冷巷雨未停 提交于 2019-12-03 05:55:56

Because that's the maximum size of a BLOB column. You need to use MEDIUMBLOB/LONGBLOB or MEDIUMTEXT/LONGTEXT.

A BLOB type in MySQL can store up to 65,534 bytes, if you try to store more than this much data MySQL will truncate the data. MEDIUMBLOB can store up to 16,777,213 bytes, and LONGBLOB can store up to 4,294,967,292 bytes.

If you enable strict SQL mode (MySQL modes) you will get an error when you try to store data that doesn't fit in the column type.

You also asked if there is a difference between BLOB and TEXT
BLOBS are for binary data. If you do a LIKE query on a BLOB field it will be case sensitive.

i.e.

SELECT 'TEXT' LIKE 'TEXT';
=> 1 for both BLOB and TEXT

SELECT 'TEXT' LIKE 'text';
=> 1 for TEXT
=> 0 for BLOB

The blob column is only 64Kb per the documentation

Try a mediumblob column type instead...

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!