POWRÓT NA STRONĘ SZKOŁY

Typy liczbowe

W przypadku niektórych typów danych, możliwe jest określenie maksymalnej liczby wyświetlanych znaków - będziemy ją zaznaczać literą M. Ta liczba może być opcjonalna, wtedy znajduje się w nawiasach kwadratowych: [M]. Największa dopuszczalna wartość parametru M wynosi 255.

Możemy wyróżnić typy liczbowe:

  • liczby całkowite - na przykład 2, 5, -2, 233, itp. Ten typ można zawęzić do liczb nieujemnych - UNSIGNED. W zestawieniu liczb całkowitych pokazanych w tabeli, zakres po słowie lub odpowiada zastosowaniu tego właśnie atrybutu;
  • liczby zmiennoprzecinkowe - są to liczby rzeczywiste, przy czym jest możliwość zadeklarowania liczby cyfr po przecinku (a dokładnie po kropce, którą będziemy stosować zamiast przecinka). W tabelach poniżej, liczba ta jest oznaczona symbolem D. Maksymalnie parametr D może przyjąć wartość 30, przy czym nie może być większy od M - 2. Skąd wzięła się liczba 2? Stąd, że liczbę wszystkich znaków musimy pomniejszyć o znak kropki i przynajmniej jeden znak liczby całkowitej;

Do wszystkich typów, można zastosować parametr ZEROFILL powodujący wypełnienie zerami miejsc poprzedzających liczbę - np. 04. Tak zdefiniowana kolumna, automatycznie przyjmuje typ UNSIGNED.

Tabela 3_5_1_1. Całkowite typy liczbowe
Typ Zakres liczb Zajmuje
bajtów
pamięci
Opis
TINYINT[(M)]
lub BIT lub BOOL
-127..128 lub 0..255 1 Bardzo małe liczby całkowite
SMALLINT[(M)] -32768..32767 lub 0..65535 2 Małe liczby całkowite
MEDIUMINT[(M)] -8388608..8388607
lub 0..16777215
3 Średnie liczby całkowite
INT[(M)]
lub INTEGER[(M)]
-231..231-1
lub 0..232-1
4 Liczby całkowite
BIGINT[(M)] -263..263-1
lub 0..264-1
8 Duże liczby całkowite
Tabela 3_5_1_2. Typy zmiennoprzecinkowe
Typ Zakres liczb Zajmuje
bajtów
pamięci
Opis
FLOAT(precyzja) Zależnie od precyzji różny Liczby zmiennoprzeconkowe o pojedynczej lub podwójnej precyzji
FLOAT[(M, D)] ±1.175494351E-38
±3.402823466E+38
4 Liczby zmiennoprzecinkowe pojedynczej precyzji. Ten typ jest równoznaczny z FLOAT(4), pozwala dodatkowo określić liczbę wyświetlanych cyfr i liczbę cyfr po przecinku.
DOUBLE[(M, D)] lub
DOUBLE PRECISION[(M, D)] lub
REAL[(M, D)]
±1.7976931348623157E-308
±2.2250738585072014E+308
8 Liczby zmiennoprzecinkowe podwójnej precyzji. Ten typ jest równoznaczny z FLOAT(8), pozwala dodatkowo określić liczbę wyświetlanych cyfr i liczbę cyfr po przecinku.
DECIMAL[(M[, D])] lub
MUMERIC[(M, D)] lub
DEC[(M, D)] lub
FIXED[(M, D)]
Różny M+2 Liczba zmiennoprzecinkowa, przechowywana jako zmienna typu CHAR. Zakres zależy od wartości M - liczby wyświetlanych znaków.