Zabírají různé množství místa a mají různé rozsahy přijatelných hodnot.
Zde jsou velikosti a rozsahy hodnot pro SQL Server , ostatní RDBMS mají podobnou dokumentaci:
Ukázalo se, že všechny používají stejnou specifikaci (až na několik drobných výjimek uvedených níže), ale podporují různé kombinace těchto typů (Oracle není zahrnut, protože má pouze NUMBER
datový typ, viz výše uvedený odkaz):
| SQL Server MySQL Postgres DB2
---------------------------------------------------
tinyint | X X
smallint | X X X X
mediumint | X
int/integer | X X X X
bigint | X X X X
A podporují stejné rozsahy hodnot (s jednou výjimkou níže) a všechny mají stejné požadavky na úložiště:
| Bytes Range (signed) Range (unsigned)
--------------------------------------------------------------------------------------------
tinyint | 1 byte -128 to 127 0 to 255
smallint | 2 bytes -32768 to 32767 0 to 65535
mediumint | 3 bytes -8388608 to 8388607 0 to 16777215
int/integer | 4 bytes -2147483648 to 2147483647 0 to 4294967295
bigint | 8 bytes -9223372036854775808 to 9223372036854775807 0 to 18446744073709551615
Typy "nepodepsané" jsou dostupné pouze v MySQL a zbytek používá pouze podepsané rozsahy, s jednou významnou výjimkou:tinyint
v SQL Server je nepodepsaný a má rozsah hodnot 0 až 255