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

作者:YYQING 时间:2024-01-15 05:25:07 

数据类型描述
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

标签:SQL,数据类型
0
投稿

猜你喜欢

  • Python类的动态修改的实例方法

    2021-07-03 12:16:15
  • python2.6.6如何升级到python2.7.14

    2023-08-07 22:54:52
  • SQL Server 日期相关资料详细介绍

    2012-07-11 16:14:07
  • asp+jsp+JavaScript动态实现添加数据行

    2023-07-03 05:37:15
  • 微信小程序request请求后台接口php的实例详解

    2023-11-11 14:24:04
  • 如何提高网页的维护效率

    2009-03-01 11:33:00
  • 一文详解Go语言切片是如何扩容的

    2024-04-26 17:29:35
  • Python无法用requests获取网页源码的解决方法

    2023-04-24 07:38:04
  • 深入理解Python虚拟机中元组(tuple)的实现原理及源码

    2022-07-12 14:14:21
  • scrapy与selenium结合爬取数据(爬取动态网站)的示例代码

    2023-07-14 00:17:08
  • 作为Web开发人员,我为什么喜欢Google Chrome浏览器

    2011-08-29 15:37:47
  • Python协程的四种实现方式总结

    2022-12-23 04:41:59
  • 解决SQL Server的“此数据库没有有效所有者”问题

    2011-12-14 18:29:35
  • Golang栈结构和后缀表达式实现计算器示例

    2024-05-02 16:25:09
  • CSS资料中常见英语词语翻译整理

    2008-08-29 12:50:00
  • 使用SQL语句 INNER JOIN 联接表

    2008-04-27 20:31:00
  • golang switch语句的灵活写法介绍

    2024-04-23 09:39:49
  • 基于js实现抽红包并分配代码实例

    2024-04-16 09:30:58
  • 将matplotlib绘图嵌入pyqt的方法示例

    2022-11-10 06:59:14
  • python爬虫豆瓣网的模拟登录实现

    2023-07-08 20:28:08
  • asp之家 网络编程 m.aspxhome.com