sobota, 9 lutego 2013

Typy danych MS SQL cz. 1 - typy liczbowe

1. Typy liczbowe

a. liczby całkowite

  • bit
typ danych obejmujący liczby całkowite z zakresu od 0 do 1. Może przyjmować także wartość NULL. Wykorzystywany głównie do przechowywania danych logicznych: TRUE (1) i FALSE (0). Konwersja do bit dowolnej wartości niezerowej daje wynik 1.

  • int, bigint, smallint, tinyint
są to typy danych o wartościach będących liczbami całkowitymi. Int jest podstawowym typem danych będących liczbami całkowitymi dla SQL Server. Bigint jest przeznaczony dla sytuacji, gdy wartości będące liczbami całkowitymi mogą wykraczać poza zakres określony typem int. W odwrotną stronę działa typ smallint ma on znacznie mniejszy zakres niż typ podstawowy. Najmniejszym z kolei jest tinyint, służy do przechowywania liczb naturalnych od 0 do 255. Dzięki temu zajmuje tylko jeden bajt.

Typ danych Zakres Ilość zajmowanych bajtów
bigint od -9 223 372 036 854 775 808 do 9 223 372 036 854 775 807 8 bajtów
int od -2 147 483 648 do 2 147 483 647 4 bajty
smallint od -32 768 do 32 767 2 bajty
tinyint Od 0 do 255 1 bajt

b. liczby rzeczywiste

  • decimal [ (p[ ,s] )] i numeric[ (p[ ,s] )]
Są to typy danych liczbowych o określonej dokładności i skali
p (dokładność) określa maksymalną łączną liczba cyfr dziesiętnych z lewej i prawej strony separatora dziesiętnego, które można przechowywać. Dokładność musi być wartością z zakresu od 1 do 38 (maksymalna precyzja). Wartość domyślna to 18. W przypadku stosowania maksymalnej dokładności prawidłowe wartości mieszczą się w przedziale od - 10^38 +1 do 10^38 - 1. s (skala) określa maksymalną liczbę cyfr dziesiętnych po przecinku. Wartość skali musi się mieścić w przedziale od 0 do p. Relację między skalą a precyzją można wyrazić zależnością: 0 <= s <= p. Wartość domyślna to 0. Skalę można podać tylko pod warunkiem określenia precyzji. Pod względem funkcjonalnym typ danych numeric jest równoważny typowi decimal. Maksymalna ilość pamięci masowej na przechowywanie danych różni się w zależności od precyzji.
Dokładność Ilość zajmowanych bajtów
1 - 9 5
10-19 9
20-28 13
29-38 17
W przypadku danych typu decimal i numeric program SQL Server traktuje każdą konkretną kombinację dokładności i skali jako osobny typ danych. Na przykład decimal(5,5) i decimal(5,0) to dwa różne typy danych.
  • float(n) i real
n jest to liczba bitów, które są używane do przechowywania danych float. Jeśli n jest określony, musi być wartością między 1 i 53. Wartość domyślna, n to 53. real jest odpowiednikiem typu float(24).
wartość "n" Dokładność Ilość zajmowanych bajtów
1-24 7 cyfr 4 bajtów
25-53 15 cyfr 8 bajtów

c. typ walutowy

  • money, smallmoney
jak sama nazwa wskazuje służy do przechowywania wartości liczbowych z dokładnością do 4 miejsc po przecinku. Money można zapisać jako decimal(19,4), zaś smallmoney jako decimal(10,4).
Typ danych Zakres Ilość zajmowanych bajtów
money od -922,337,203,685,477.5808 do 922,337,203,685,477.5807 8 bajtów
smallmoney -214,748.3648 do 214,748.3647 4 bajtów
[subscribe2]

Brak komentarzy:

Prześlij komentarz