Ogólnie zawsze używam Ints. Wiem, że teoretycznie nie jest to najlepsza praktyka, ponieważ należy używać najmniejszego typu danych, który gwarantuje przechowywanie danych.
Na przykład lepiej jest użyć, tinyint
gdy wiesz, że jedyne dane, które będziesz przechowywać, to 1, 0 lub zero (z bardzo małą szansą na rozszerzenie ich do 2 lub 3 później).
Jednak jedyny powód, dla którego to robię, to do celów przechowywania - użycie 1 bajtu w wierszu zamiast 4 bajtów.
Jakie są skutki używania tinyint
(lub smallint
nawet bigint
) po prostu int
innego niż oszczędzanie miejsca na dysku twardym?
I'd use an ENUM for such a thing.
Nie w SQL Server, nie zrobiłbyś tego, ponieważ nie ma żadnych wyliczeń.