The SMALLINT data type is an exact numeric data type; its accuracy is preserved after arithmetic operations. It requires 2
bytes of storage.
The range for SMALLINT values is -215 to 215 - 1, or -32768 to 32767.
The range for UNSIGNED SMALLINT values is 0 to 216 - 1, or 0 to 65535.
When converting a string to a SMALLINT, leading and trailing spaces are removed. If the leading character is +, it is ignored.
If the leading character is -, the remaining digits are interpreted as a negative number. Leading 0 characters are skipped,
and the remaining characters are converted to an integer value. An error is returned if the value is out of the valid range
for the destination data type, if the string contains illegal characters, or if the string cannot be decoded as an integer
value.