Mereka mengambil jumlah ruang yang berbeda dan mereka memiliki rentang nilai yang dapat diterima yang berbeda.
Berikut adalah ukuran dan rentang nilai untuk SQL Server , RDBMS lain memiliki dokumentasi serupa:
Ternyata mereka semua menggunakan spesifikasi yang sama (dengan beberapa pengecualian kecil yang disebutkan di bawah) tetapi mendukung berbagai kombinasi jenis tersebut (Oracle tidak disertakan karena hanya memiliki NUMBER
tipe data, lihat tautan di atas):
| 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
Dan keduanya mendukung rentang nilai yang sama (dengan satu pengecualian di bawah) dan semuanya memiliki persyaratan penyimpanan yang sama:
| 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
Jenis "tidak ditandatangani" hanya tersedia di MySQL, dan sisanya hanya menggunakan rentang yang ditandatangani, dengan satu pengecualian penting:tinyint
di SQL Server tidak ditandatangani dan memiliki rentang nilai 0 hingga 255