Co oznacza „bez znaku” w MySQL i kiedy powinienem go używać?
MySQL mówi:
Wszystkie typy liczb całkowitych mogą mieć opcjonalny (niestandardowy) atrybut UNSIGNED. Typu bez znaku można użyć, aby zezwolić tylko na liczby nieujemne w kolumnie lub gdy potrzebny jest większy górny zakres liczbowy dla kolumny. Na przykład, jeśli kolumna INT jest PODPISANA, rozmiar zakresu kolumny jest taki sam, ale jej punkty końcowe przesuwają się z -2147483648 i 2147483647 do 0 i 4294967295.
Kiedy go używam?
Zadaj sobie pytanie: czy to pole kiedykolwiek będzie zawierało wartość ujemną ?
Jeśli odpowiedź brzmi „nie”, wybierz UNSIGNED
typ danych.
Częstym błędem jest użycie klucza podstawowego, który jest automatycznym przyrostem INT
rozpoczynającym się od zera , ale typem jest SIGNED
, w takim przypadku nigdy nie dotkniesz żadnej z liczb ujemnych i zmniejszasz zakres możliwych id do połowy.
positive
atrybut, ponieważ wydaje się jeszcze bardziej powszechne, że chcesz pracować tylko z dodatnimi, niezerowymi liczbami.