Microsoft SQL Server 2008

Dziewięć typów danych liczbowych w SQL Server 2008 Udostępnij na: Facebook

Wskazówki dotyczące SQL Server

Opublikowano: 4 maja 2009

Jednym z najpopularniejszych typów danych, jakie można znaleźć w SQL Server, są dane typu liczbowego. W SQL Server 2008 dostępnych jest dziewięć typów danych liczbowych.

Cztery z nich są przeznaczone do przechowywania wartości całkowitych o różnej wielkości. Dwa typy danych służą do przechowywania danych walutowych. Trzy typy danych są zaprojektowane do przechowywania liczb rzeczywistych o różnej dokładności.

Oto przegląd dostępnych typów danych liczbowych wraz z ich zakresem i wymaganą pamięcią.

Typ danych Zakres wartości Obszar pamięci
tinyint 0 do 255 1 bajt
smallint –32 768 do 32 767 2 bajty
int –231 do 231–1 4 bajty
bigint –263 do 263–1 8 bajtów
decimal(p,s) numeric(p,s) –1038+1 to 1038–1 5 do 17 bajtów
smallmoney –214 748,3648 do 214 748,3647 4 bajty
money –922 337 203 685 477,5808 do 922 337 203 685 477, 5807 8 bajtów
real –3.438 do –1.1838, 0, i 1.1838 do 3.438 bajty
float(n) –1.79308 do –2.23308, 0 i 2.23308 do 1.79308 4 bajty lub 8 bajtów
Zauważmy, że typy dziesiętne i liczbowe są swoimi odpowiednikami. Oba typy danych zostały zachowane, aby utrzymać kompatybilność wsteczną. Oba typy danych mogą być używane przy przechowywaniu dokładnych wartości liczbowych z miejscami po przecinku, jednak zaleca się, aby dla spójności dokonać wyboru i używać wszędzie wartości liczbowych lub dziesiętnych.

Typy danych money i smallmoney są przeznaczone specjalnie do przechowywania wielkości walutowych z nie więcej niż czterema miejscami po przecinku. Warto zauważyć, że choć money i smallmoney zostały zaprojektowane do przechowywania wartości walutowych, to instytucje finansowe używają danych typu dziesiętnego, aby przechowywać większą liczbę miejsc po przecinku, co jest istotne przy obliczaniu odsetek oraz zysków.

W zmiennoprzecinkowym typie danych można jako parametr opcjonalny podać liczbę cyfr po przecinku, która jest określana jako mantysa. Jeśli mantysa ma wartość od 1 do 24, to liczba zajmie 4 bajty pamięci. Jeśli mantysa jest zdefiniowana w wielkości od 25 do 53 znaków, to potrzebnych jest 8 bajtów pamięci.

Z książki wydawnictwa Microsoft Press, Microsoft SQL Server 2008 Step by Step, Mike Hotek.

 Do początku strony Do początku strony

Microsoft SQL Server 2008