peibaishi 发表于 2015-7-3 06:25:44

SQL Server 2000 数据类型

  SQL Server 2000 数据类型



1.   数据类型分类 1.1. 整型 1.1.1.    概述  在SQL Server 2000中整型按照数据范围从小到大分为: bit, tinyint, smallint, int, bigint。
1.1.2.    详细描述数据类型
取值范围
描述
备注
  bit
  0, 1, NULL
  1. 不能对bit类型建立索引
  2. bit类型最多占用1个字节。
  SQL server会优化bit类型存储,如果一个表中有不多于 8 个的 bit 列,这些列将作为一个字节存储。如果表中有 9 到 16 个 bit 列,这些列将作为两个字节存储。更多列的情况依此类推。
  tinyint
  从 0 到 255 的整型数据。
  占用1个字节
  适合于做一些状态记录
  smallint
  从-32768到32767之间的整数。
  占用2个字节
  适合于做一些状态记录以及小的数据记录。
  对应于Java中的short类型,但在SMP的实际使用中将其映射为Integer类型
  int
  从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。
  占用4个字节
  对应于Java中的Integer类型。可以保存大多数的数字
  bigint
  从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。
  占用8个字节
  对应于Java中的Long型数据。
1.1.3.    小结  SQL Server2000 中最常使用的是int类型,tinyint和smallint在计算时如果发生溢出,会自动转换成范围更大的类型进行计算,但int不会隐式转换为bigint类型。
  
1.1.4.    示例  declare @numInt   int
  declare @numTinyInt    tinyint
  declare @numSmallint   smallint
  
  set @numInt = 2147483647
  set @numTinyInt = 255
  set @numSmallint = 32767
  
  
  print @numInt + 1 -- 出现溢出错误
  print @numTinyInt + 1
  print @numSmallint + 1
  
1.2. 精确浮点型 1.2.1.    概述  浮点类型有两种,一种是decimal,一种是numeric。
1.2.2.    详细描述数据类型
取值范围
描述
备注
  decimal[(p[, s])]
  使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。
  p(精度):小数点左边和右边能存储十进制数字的最大个数。最大为38
  s(小数位数): 小数点右边能存储十进制数字的个数。
  p和s之间的关系:
  0
页: [1]
查看完整版本: SQL Server 2000 数据类型