我试图将一个很长的文本字符串插入MySQL Blob列,但MySQL只保存了64kB的数据。该字符串长度为75360个字符。我正在使用PHP的 mysql_connect()

进行连接

有什么想法吗?

如果它是Blob或Text,它会有所不同吗?我最初把它作为文本但是没有任何影响地改变它。

有帮助吗?

解决方案

因为那是BLOB的最大尺寸柱。您需要使用MEDIUMBLOB / LONGBLOB或MEDIUMTEXT / LONGTEXT。

其他提示

MySQL中的 BLOB 类型最多可存储65,534字节,如果您尝试存储的数据超过这么多数据,MySQL将截断数据。 MEDIUMBLOB 最多可存储16,777,213字节, LONGBLOB 最多可存储4,294,967,292字节。

如果启用严格SQL模式( MySQL模式)当您尝试存储不适合列类型的数据时,您将收到错误。

您还询问BLOB和TEXT之间是否存在差异 BLOBS用于二进制数据。如果对BLOB字段执行LIKE查询,则它将区分大小写。

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

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