LONGBLOB
Syntax
LONGBLOB
Description
A BLOB column with a maximum length of 4,294,967,295 bytes or 4GB (232 - 1). The effective maximum length of LONGBLOB columns depends on the configured maximum packet size in the client/server protocol and available memory. Each LONGBLOB value is stored using a four-byte length prefix that indicates the number of bytes in the value.
Oracle Mode
In Oracle mode, BLOB
is a synonym for LONGBLOB
.
EXAMPLES
LONGBLOB
Example of LONGBLOB:
CREATE TABLE longblob_example (
description VARCHAR(20),
example LONGBLOB
) DEFAULT CHARSET=latin1; -- One byte per char makes the examples clearer
Note that the maximum size of a LONGBLOB is so large that it cannot be sent to the server without breaking the value up into chunks (something that the command-line client cannot do). For values larger than 16M you can increase the max_allowed_packet size up to a maximum of 1024M to increase the allowed size of non-chunked values.
INSERT INTO longblob_example VALUES
('Normal foo', 'foo'),
('Trailing spaces foo', 'foo '),
('NULLed', NULL),
('Empty', ''),
('Maximum', RPAD('', 4294967295, CHAR(7)));
ERROR 1301 (HY000): Result of rpad() was larger than max_allowed_packet (16777216) - truncated
Data Too Long
When SQL_MODE is strict (the default) a value is considered "too long" when its length exceeds the size of the data type, and an error is generated.
Example of data too long behavior for LONGBLOB:
TRUNCATE longblob_example;
INSERT INTO longblob_example VALUES
('Overflow', RPAD('', 4294967296, CHAR(7)));
ERROR 1301 (HY000): Result of rpad() was larger than max_allowed_packet (16777216) - truncated
See Also
This page is licensed: GPLv2, originally from fill_help_tables.sql
Last updated
Was this helpful?