MySQL字段类型

MySQL字段类型MySQL字段类型

大家好,又见面了,我是你们的朋友全栈君。

MySQL字段类型

MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。

数值类型

类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1 字节 (-128,127) (0,255) 小整数值
SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值
MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
FLOAT 4 字节 (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38) 单精度
浮点数值
DOUBLE 8 字节 (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度
浮点数值

 

字符串

字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。该节描述了这些类型如何工作以及如何在查询中使用这些类型。

char和varchar:

1.char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格,varchar不限于此。 

2.char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。 

3.char类型的字符串检索速度要比varchar类型的快。
 

varchar和text: 

1.varchar可指定n,text不能指定,内部存储varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),text是实际字符数+2个字节。 
2.text类型不能有默认值。 
3.varchar可直接创建索引,text创建索引要指定前多少个字符。varchar查询速度快于text,在都创建索引的情况下,text的索引似乎不起作用。

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-65535 字节 变长字符串
TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节 短文本字符串
BLOB 0-65 535字节 二进制形式的长文本数据
TEXT 0-65 535字节 长文本数据
MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LONGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据

日期时间类型

表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。

类型 大小 范围 格式 用途
DATE 3字节 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3字节 ‘-838:59:59’/’838:59:59’ HH:MM:SS 时间值或持续时间
YEAR 1字节 1901/2155 YYYY 年份值
DATETIME 8字节 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 4字节

1970-01-01 00:00:00/2038

结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07

YYYYMMDD HHMMSS 混合日期和时间值,时间戳

 

数据类型的属性

MySQL关键字 含义
NULL 数据列可包含NULL值
NOT NULL 数据列不允许包含NULL值
DEFAULT 默认值
PRIMARY KEY 主键
AUTO_INCREMENT 自动递增,适用于整数类型
UNSIGNED 无符号
CHARACTER SET name 指定一个字符集
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106444.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java构造函数可以重载么_Java 构造函数和函数重载「建议收藏」

    java构造函数可以重载么_Java 构造函数和函数重载「建议收藏」构造函数:⑴方法名和类名相同,而且没有返回类型(包括void也没有);⑵没有返回值;⑶如果没有输入构造函数,jvm会自动帮我们创建一个不带参数,没有任何函数体的的构造函数;如果我们手动的创建了其他构造函数,就不会帮我们创建这个不带参数的构造函数了;⑷一般情况下,如果想要实现自己的构造方法,最好重载一个不带参数的构造方法。函数重载:指多个函数可以使用同一个函数名,只要它们参数列表不同,将意义相近…

    2022年6月18日
    44
  • 东南大学计算机调剂上岸,这些985/211的分校上岸毫无难度??

    东南大学计算机调剂上岸,这些985/211的分校上岸毫无难度??不知不觉,22考研的时间已经过去一半了。考研er们,往后的时间需要抓紧了。尽管备考时间不充裕,仍有一些小伙伴还在各大院校间反复横跳,确定不了目标学校和专业。哎,就是没有压迫感,就是玩。讲真,确认目标院校太晚的话,后面复习的压力真的会成倍叠加,所以还是要尽快敲定自己的目标。本期为大家推荐几个985/211的异地校区,竞争压力相对较小,部分专业报录比较低,为小伙伴们的确定院校助一臂之力。东北大学(秦皇…

    2022年6月12日
    67
  • django3.0异步_定时任务框架

    django3.0异步_定时任务框架celery介绍Celery是由Python开发、简单、灵活、可靠的分布式任务队列,是一个处理异步任务的框架,其本质是生产者消费者模型,生产者发送任务到消息队列,消费者负责处理任务。Celery侧重

    2022年8月7日
    2
  • Laravel 代码开发最佳实践[通俗易懂]

    Laravel 代码开发最佳实践

    2022年2月7日
    95
  • Tomcat配置域名和虚拟文件夹[通俗易懂]

    Tomcat配置域名和虚拟文件夹

    2022年2月5日
    46
  • 如何查看linux操作系统版本号_如何查看centos版本

    如何查看linux操作系统版本号_如何查看centos版本Linux系统自问世后,产生了各种分支,目前主流的操作系统版本有reahat,Centos,Ubuntu,debian,Suselinux等,不同操作系统命令上也稍有区别,那么在linux主机上,我们怎么查看操作系统的版本号呢?工具/原料 xshell6 Centos7 方法/步骤 方式一:通过命令cat/etc/redhat-release,主要针对redhat系列,redhat,centos都可以通过此命令查看。 方式二:如下方法即可查看操作系统版本,

    2022年9月15日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号