MEDIUMINT
Синтаксис
MEDIUMINT[(M)] [SIGNED | UNSIGNED | ZEROFILL]
Описание
Целое число среднего размера. Диапазон со знаком — от -8388608 до 8388607. Диапазон без знака — от 0 до 16777215.
ZEROFILL дополняет целое число нулями и предполагает UNSIGNED (даже если UNSIGNED не указано).
INT3 является синонимом MEDIUMINT.
Подробную информацию об атрибутах см. в Обзоре числовых типов данных.
Примеры
CREATE TABLE mediumints (a MEDIUMINT,b MEDIUMINT UNSIGNED,c MEDIUMINT ZEROFILL); DESCRIBE mediumints; +-------+--------------------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------------------------+------+-----+---------+-------+ | a | mediumint(9) | YES | | NULL | | | b | mediumint(8) unsigned | YES | | NULL | | | c | mediumint(8) unsigned zerofill | YES | | NULL | | +-------+--------------------------------+------+-----+---------+-------+
При режиме strict_mode, установленном по умолчанию начиная с MariaDB 10.2.4:
INSERT INTO mediumints VALUES (-10,-10,-10); ERROR 1264 (22003): Out of range value for column 'b' at row 1 INSERT INTO mediumints VALUES (-10,10,-10); ERROR 1264 (22003): Out of range value for column 'c' at row 1 INSERT INTO mediumints VALUES (-10,10,10); INSERT INTO mediumints VALUES (8388608,8388608,8388608); ERROR 1264 (22003): Out of range value for column 'a' at row 1 INSERT INTO mediumints VALUES (8388607,8388608,8388608); SELECT * FROM mediumints; +---------+---------+----------+ | a | b | c | +---------+---------+----------+ | -10 | 10 | 00000010 | | 8388607 | 8388608 | 08388608 | +---------+---------+----------+
При режиме strict_mode, отключенном, по умолчанию до MariaDB 10.2.3:
INSERT INTO mediumints VALUES (-10,-10,-10); Query OK, 1 row affected, 2 warnings (0.05 sec) Warning (Code 1264): Out of range value for column 'b' at row 1 Warning (Code 1264): Out of range value for column 'c' at row 1 INSERT INTO mediumints VALUES (-10,10,-10); Query OK, 1 row affected, 1 warning (0.08 sec) Warning (Code 1264): Out of range value for column 'c' at row 1 INSERT INTO mediumints VALUES (-10,10,10); INSERT INTO mediumints VALUES (8388608,8388608,8388608); Query OK, 1 row affected, 1 warning (0.05 sec) Warning (Code 1264): Out of range value for column 'a' at row 1 INSERT INTO mediumints VALUES (8388607,8388608,8388608); SELECT * FROM mediumints; +---------+---------+----------+ | a | b | c | +---------+---------+----------+ | -10 | 0 | 00000000 | | -10 | 0 | 00000000 | | -10 | 10 | 00000000 | | -10 | 10 | 00000010 | | 8388607 | 8388608 | 08388608 | | 8388607 | 8388608 | 08388608 | +---------+---------+----------+
См. также
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проходит предварительной проверки MariaDB. Мнения, информация и мнения, выраженные в этом контенте, не обязательно отражают взгляды MariaDB или любой другой стороны.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/mediumint/