WEB开发网
开发学院数据库MSSQL Server SQL Server 2005中的数据类型总结 阅读

SQL Server 2005中的数据类型总结

 2009-12-27 15:40:45 来源:WEB开发网   
核心提示:其他数据类型 cursor timestamp sql_variant uniqueidentifier table

其他数据类型

cursor timestamp
sql_variant uniqueidentifier
table  

1、精确数字

I) 整型数据类型int、bigint、smallint 和 tinyint

数据类型 范围 存储
bigint -2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,372,036,854,775,807) 8 字节
int -2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647) 4 字节
smallint -2^15 (-32,768) 到 2^15-1 (32,767) 2 字节
tinyint 0 到 255 1 字节

II) bit 可以取值为 1、0 或 NULL 的整数数据类型。如果表中的列为 8 bit 或更少,则这些列作为 1 个字节存储。如果列为 9 到 16 bit,则这些列作为 2 个字节存储,以此类推。字符串值 TRUE 和 FALSE 可以转换为以下 bit 值:TRUE 转换为 1,FALSE 转换为 0。

III) decimal 和 numeric,两者都是带固定精度和小数位数的数值数据类型。decimal[ (p[ , s] )] 和 numeric[ (p[ , s] )] 两者都是固定精度和小数位数。使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。numeric 在功能上等价于 decimal。p(精度)最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数。该精度必须是从 1 到最大精度 38 之间的值。默认精度为 18。s(小数位数)小数点右边可以存储的十进制数字的最大位数。小数位数必须是从 0 到 p 之间的值。仅在指定精度后才可以指定小数位数。默认的小数位数为 0;因此,0 <= s <= p。最大存储大小基于精度而变化。

Ⅳ) money 和 smallmoney,两者是 代表货币或货币值的数据类型。

数据类型 范围 存储
money -922,337,203,685,477.5808 到 922,337,203,685,477.5807 8 字节
smallmoney -214,748.3648 到 214,748.3647 4 字节

money 和 smallmoney 数据类型精确到它们所代表的货币单位的万分之一。

2、近似数字 float 和 real,两者用于表示浮点数值数据的大致数值数据类型。浮点数据为近似值;因此,并非数据类型范围内的所有值都能精确地表示。

数据类型 范围 存储
float -1.79E + 308 至 -2.23E - 308、0 以及 2.23E - 308 至 1.79E + 308 取决于 n 的值
real -3.40E + 38 至 -1.18E - 38、0 以及 1.18E - 38 至 3.40E + 38 4 字节

float [ ( n ) ] 其中 n 为用于存储 float 数值尾数的位数,以科学记数法表示,因此可以确定精度和存储大小。如果指定了 n,则它必须是介于 1 和 53 之间的某个值。n 的默认值为 53。

3、日期和时间 datetime 和 smalldatetime 两者用于表示某天的日期和时间的数据类型。

数据类型 范围 精确度
datetime 1753 年 1 月 1 日到 9999 年 12 月 31 日 3.33 毫秒
smalldatetime 1900 年 1 月 1 日到 2079 年 6 月 6 日 1 分钟

datetime用两个 4 字节的整数存储,第一个 4 字节存储“基础日期”(即 1900 年 1 月 1 日)之前或之后的天数。基础日期是系统参照日期。另外一个 4 字节存储天的时间(以午夜后经过的毫秒数表示)。

smalldatetime 数据类型存储天的日期和时间,但精确度低于 datetime。数据库引擎 将 smalldatetime 值存储为两个 2 字节的整数。第一个 2 字节存储 1900 年 1 月 1 日后的天数。另外一个 2 字节存储午夜后经过的分钟数。

上一页  1 2 3 4  下一页

Tags:SQL Server 数据

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接