盡管int依然是SQL Server 2000中最主要的整數數據類型,但是SQL Server 2000還是新增加了整數數據類型bigint,它應用於整數超過int數據范圍的場合。
int數據類型所表示的數值范圍從-2^31到2^31-1,也就是說,你可以用int數據類型來表達-2,147,483,648到2,147,483,647(即大約正負二十億)之間的整數。一個int型占用四個字節的存儲空間。
而bigint可以精確的表示從-2^63到2^63-1(即從-9,223,372,036,854,775,808到 9,223,372,036,854,775,807)之間的整數,它占用了八個字節的存儲空間。
當你使用bigint時,需要留意下面幾點:
在數據類型優先表中,bigint數據類型位於int之上、smallmoney之下。
SQL Server不能自動的把int型數據轉換成bigint型。
如果函數的參數表達式是一個bigint類型時,函數只能返回bigint類型的數據。使用bigint數據類型的函數有AVG、CEILING、FLOOR、MAX、MIN、ROUND以及SUM等等。
在指定了整型數據的所有語法位置使用bigint數據類型:ALTER PROCEDURE、ALTER TABLE、CREATE PROCEDURE、CREATE TABLE以及 DECLARE變量。
你可以在SQL Server目錄組件(catalog components)得到bigint欄的信息。
你可能會對為什麼任何人都有可能需要使用bigint數據類型這一問題感到疑惑。實際上,這個問題並不難以回答,例如當你的數據庫需要進行大數據運算時(如信用卡公司常常會碰到這種情況),你就需要使用bigint數據類型。