Syntax
------ 
SMALLINT[(M)] [SIGNED | UNSIGNED | ZEROFILL]
 
Description
----------- 
A small integer. The signed range is -32768 to 32767. The
unsigned range is 0 to 65535.
 
If a column has been set to ZEROFILL, all values will be
prepended by zeros so that the SMALLINT value contains a
number of M digits.
 
Note: If the ZEROFILL attribute has been specified, the
column will automatically become UNSIGNED.
 
For more details on the attributes, see Numeric Data Type
Overview.
 
Examples
-------- 
CREATE TABLE smallints (a SMALLINT,b SMALLINT UNSIGNED,c
SMALLINT ZEROFILL);
 
INSERT INTO smallints VALUES (-10,-10,-10);
Query OK, 1 row affected, 2 warnings (0.09 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 smallints 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 smallints VALUES (-10,10,10);
 
INSERT INTO smallints VALUES (32768,32768,32768);
Query OK, 1 row affected, 1 warning (0.04 sec)
Warning (Code 1264): Out of range value for column 'a' at
row 1
 
INSERT INTO smallints VALUES (32767,32768,32768);
 
SELECT * FROM smallints;
+-------+-------+-------+
| a | b | c |
+-------+-------+-------+
| -10 | 0 | 00000 |
| -10 | 10 | 00000 |
| -10 | 10 | 00010 |
| 32767 | 32768 | 32768 |
| 32767 | 32768 | 32768 |
+-------+-------+-------+
 


URL: https://mariadb.com/kb/en/smallint/