Liczby całkowite (INTEGER):

Liczby rzeczywiste (REAL):
Każdy kto miał kiedykolwiek kontakt z programowaniem wie że takie liczby przechowywane są w pamięci komputera w postaci przybliżonej (zapis przy pomocy cechy i mantysy czyli wykładnika potęgi). Tak też jest w przypadku MySLQ'a. Nie będę się w tym momencie rozwodził nad teorią takiego zapisu, gdyż można ją znaleźć w dowolnej książce dotyczącej programowania (np.: Turbo Pascal 7.0 cz. I Andrzeja Marciniaka - tą książkę zna chyba każdy kto kiedykolwiek miał kontakt z techniczną uczelnią w Polsce).

Oto zakresy dostępnych typów rzeczywistych:

Ostatnim bardzo przydatnym i wygodnym typem numerycznym jest: DECIMAL (M,D) gdzie M jest ilością znaczących pozycji w liczbie a Y skalą liczby np.: DECIMAL(9,2) będzie miał zakres od -9999999.99 do 9999999.99 jest to liczba składająca się z dziewięciu pozycji i przesunięta o dwa miejsca w prawo (liczba zajmuje M bajtów, jeśli M<D to D+2 bajty). DECIMAL jest doskonałym typem do przechowywania wartości "pieniężnych" np.: cen, gdyż przechowuje informacje w sposób dokładny, oczywiście w taki sposób w jaki zdefiniujemy.

Czasowe typy danych w MySQL'u

Jak pewnie każdy się domyśla służą do przechowywania wartości związanych z czasem czyli roku, daty, godziny lub wszystkiego równocześnie. Możemy skorzystać z następujących typów:

Łańcuchowe (znakowe) typy danych
Przy ich pomocy umieszczamy w bazie danych, informacje typowo tekstowe (łańcuchy znaków). Do naszej dyspozycji są następujące typy:

Typ wyliczeniowy ENUM
dane przyjmują wartości spośród wcześniej przygotowanej przez nas listy. Lista taka może mieć maksymalnie 65535 elementów.

Typ SET
typ zbiorowy - pozycja taka może przyjmować 0 lub więcej wartości spośród listy przygotowanej podczas tworzenia tabeli. Przykład : dla definicji SET ("jeden" , "dwa") do komórki tabeli możemy zapisać następujące wartości:
"" lub "jeden" lub "dwa" lub "jeden, dwa". Definicja SET może mieć maksymalnie 64 elementy.