了解SQL SERVER 2008 9種數值資料類型 Understand the 9 Numeric Data Types in SQL Server 2008

在SQL Server 中你將發現數值資料類型是很常見的.SQL Server 2008 有9種數值資料類型.4種資料類型設計儲存各種大小的整數.2種資料類型設計儲存貨幣資料.4種資料類型設計儲存基於10進制不同精確度的數值.底下有各種數值資料類型範圍和儲存空間概觀.

資料類型範圍的儲存空間

資料類型

範圍

儲存空間

tinyint

0 to 255

1 位元組

smallint

-32,768 to 32,767

2位元組

int

clip_image002 to clip_image004-1

4位元組

bigint

clip_image006 toclip_image008-1

8位元組

Decimal(p,s)

Numeric(p,s)

clip_image010 +1 to clip_image012-1

5 to 17 位元組

smallmoney

-214,748.3648 to 214,748.3647

4位元組

money

-922,337,203,685,477.5808 to

922,337,203,685,477.5807

8位元組

real

clip_image014 to clip_image016,0 and clip_image018 to clip_image020

4位元組

float(n)

clip_image022 to clip_image024,0,and clip_image026

to clip_image028

4位元組或8位元組

附註decimal 和 numeric兩者資料類型是完全相同的.兩者資料類型也支援往後產品相容性,當你需要儲存確切的小數值資料,這兩者資料類型也都能使用.然而,建議整個組織選擇其中一個使用以確保一致性.

Money和smallmoney資料類型是特別設計用來儲存最多4位小數的貨幣值

有趣的是 ,money和smallmoney雖然是設計來儲存貨幣值,但金融機構往往選用decimal資料類型來儲存更大的小數數值,因為利率和收益率計算方式才是決定的關鍵.

float 資料類型的參數數字稱為尾數(mantissa),該參數是可選擇的.如果尾數定義在1和24之間,float儲存將耗用4位元組空間.如果尾數定義在25和33之間,float儲存將耗用8位元組空間.

來源出處: Microsoft Press book Microsoft SQL Server 2008 Step by Step by Mike Hotek.