尽管int依然是SQL Server 2000中最主要的整数数据类型,但是SQL Server 2000还是新增加了整数数据类型bigint,它应用于整数超过int数据范围的场合。 ;f %
8x/>35fF
尽管int依然是SQL Server 2000中最主要的整数数据类型,但是SQL Server 2000还是新增加了整数数据类型bigint,它应用于整数超过int数据范围的场合。 ;f %
8x/>35fF
int数据类型所表示的数值范围从-2^31到2^31-1,也就是说,你可以用int数据类型来表达-2,147,483,648到2,147,483,647(即大约正负二十亿)之间的整数。一个int型占用四个字节的存储空间。 >Uh6}>*
1cwc* ##8
而bigint可以精确的表示从-2^63到2^63-1(即从-9,223,372,036,854,775,808到 9,223,372,036,854,775,807)之间的整数,它占用了八个字节的存储空间。 zQSJ>/^,|
fuqGDI/ !
当你使用bigint时,需要留意下面几点: s)|p8xj|
O,yyV[)
在数据类型优先表中,bigint数据类型位于int之上、smallmoney之下。 ]M+hkwzS
4%8a:<Ajk
SQL Server不能自动的把int型数据转换成bigint型。 ]_qj6ss
/5$_I(Q7
如果函数的参数表达式是一个bigint类型时,函数只能返回bigint类型的数据。使用bigint数据类型的函数有AVG、CEILING、FLOOR、MAX、MIN、ROUND以及SUM等等。 )E ,":}v
,<(d
在指定了整型数据的所有语法位置使用bigint数据类型:ALTER PROCEDURE、ALTER TABLE、CREATE PROCEDURE、CREATE TABLE以及 DECLARE变量。 ,p;y?n0i
zWj68f-[o
你可以在SQL Server目录组件(catalog components)得到bigint栏的信息。 4 ?po r
V `zp O
你可能会对为什么任何人都有可能需要使用bigint数据类型这一问题感到疑惑。实际上,这个问题并不难以回答,例如当你的数据库需要进行大数据运算时(如信用卡公司常常会碰到这种情况),你就需要使用bigint数据类型。 9{G=-Q{5\
y:zQ-T`N