服务器之家

服务器之家 > 正文

SQL的常用数据类型列表详解

时间:2020-05-25 14:52     来源/作者:YYQING

数据类型

描述

CHARACTER(n)

字符/字符串。固定长度 n。

VARCHAR(n) 或
CHARACTER VARYING(n)

字符/字符串。可变长度。最大长度 n。

BINARY(n)

二进制串。固定长度 n。

BOOLEAN

存储 TRUE 或 FALSE 值

VARBINARY(n) 或
BINARY VARYING(n)

二进制串。可变长度。最大长度 n。

INTEGER(p)

整数值(没有小数点)。精度 p。

SMALLINT

整数值(没有小数点)。精度 5。
存储数据的范围是从-2的15次方(-32768)到2的15次方-1(32767),占用2个字节的储存空间。

INTEGER

整数值(没有小数点)。精度 10。
存储数据的范围是-2的31次方到2的31次方-1,占用4个字节的储存空间。

BIGINT

整数值(没有小数点)。精度 19。

DECIMAL(p,s)

精确数值,精度 p,小数点后位数 s。例如:decimal(5,2) 是一个小数点前有 3 位数小数点后有 2 位数的数字。

NUMERIC(p,s)

精确数值,精度 p,小数点后位数 s。(与 DECIMAL 相同)

FLOAT(p)

近似数值,尾数精度 p。一个采用以 10 为基数的指数计数法的浮点数。该类型的 size 参数由一个指定最小精度的单一数字组成。

REAL

近似数值,尾数精度 7。

FLOAT

近似数值,尾数精度 16。

DOUBLE PRECISION

近似数值,尾数精度 16。

DATE

存储年、月、日的值。

TIME

存储小时、分、秒的值。

TIMESTAMP

存储年、月、日、小时、分、秒的值。

INTERVAL

由一些整数字段组成,代表一段时间,取决于区间的类型。

ARRAY

元素的固定长度的有序集合

MULTISET

元素的可变长度的无序集合

XML

存储 XML 数据

 

其中标红的是在建表时常用的数据类型。

数据类型的名称在不同数据库平台中有一些区别,在SQL Server和MY SQL中(或者还有其他平台)数值型还有一个tinyint的类型(范围从0到255)。

应该注意根据实际情况选用不同的数据类型。

一、定义数据长度太长会造成存储空间的浪费。

例如:

对“姓名”字段:中国人姓名一般不会太长,可以定义为char (10)。char(10)可以存储5个中文字符。而在需要考虑少数民族或者其他名字很长(例如外国人?)的情况下,则需要改成char(20)或者更长。

二、选择类型不准确可能会造成对后续操作的影响。

例如:

对“年龄”字段:理论上“年龄”可以定义成char和tinyint。当不需要对年龄进行计算时,定义成char是没有问题的;但很多情况下,我们需要对年龄进行计算、排序和比较等操作,选用tinyint会方便一些。而且正常地球人寿命不超过150,smallint和int的范围太大,造成空间浪费。

对“电话号码”字段:建议用varchar类型。电话号码如果分固定电话和手机号码的话,长度不一。而varchar比char更灵活,长度可变,而且存储空间更小。

原文链接:http://blog.csdn.net/sinat_38263559/article/details/73658535

标签:

相关文章

热门资讯

歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部