mysql数据库提供了几种数据类型_三种常用的MySQL 数据类型_江思捷的博客-程序员宅基地

技术标签: mysql数据库提供了几种数据类型  

MySQL中定义数据字段的类型对你数据库的优化是非常重要的。

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

数值类型

MySQL支持所有标准SQL数值数据类型。

这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。

关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。

BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。

作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。

类型

大小

范围(有符号)

范围(无符号)

用途

TINYINT

1 byte

(-128,127)

(0,255)

小整数值

SMALLINT

2 bytes

(-32 768,32 767)

(0,65 535)

大整数值

MEDIUMINT

3 bytes

(-8 388 608,8 388 607)

(0,16 777 215)

大整数值

INT或INTEGER

4 bytes

(-2 147 483 648,2 147 483 647)

(0,4 294 967 295)

大整数值

BIGINT

8 bytes

(-9,223,372,036,854,775,808,9 223 372 036 854 775 807)

(0,18 446 744 073 709 551 615)

极大整数值

FLOAT

4 bytes

(-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 bytes

(-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)

双精度

浮点数值

DECIMAL

对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2

依赖于M和D的值

依赖于M和D的值

小数值

日期和时间类型

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

每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。

TIMESTAMP类型有专有的自动更新特性,将在后面描述。

类型

大小( bytes)

范围

格式

用途

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

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

字符串类型

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

类型

大小

用途

CHAR

0-255 bytes

定长字符串

VARCHAR

0-65535 bytes

变长字符串

TINYBLOB

0-255 bytes

不超过 255 个字符的二进制字符串

TINYTEXT

0-255 bytes

短文本字符串

BLOB

0-65 535 bytes

二进制形式的长文本数据

TEXT

0-65 535 bytes

长文本数据

MEDIUMBLOB

0-16 777 215 bytes

二进制形式的中等长度文本数据

MEDIUMTEXT

0-16 777 215 bytes

中等长度文本数据

LONGBLOB

0-4 294 967 295 bytes

二进制形式的极大文本数据

LONGTEXT

0-4 294 967 295 bytes

极大文本数据

注意:

char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。

CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。

BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。

有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。

以上就是三种常用的MySQL 数据类型的详细内容,更多关于MySQL 数据类型的资料请关注我们其它相关文章!

本文标题: 三种常用的MySQL 数据类型

本文地址: http://www.cppcns.com/shujuku/mysql/324294.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_33869754/article/details/113220962

智能推荐

iMatrix平台中菜单标签如何设置_零度彩虹的博客-程序员宅基地

菜单标签(menu:menu)1.1   说明作用:在系统元数据系统(mms)中配置了某系统相应的二级菜单、三级菜单、四级菜单等等,使用该标签可以将该系统配置的所有菜单显示出来。代替一级菜单标签、二级菜单标签的功能。参数说明: showNum:可选。一级菜单显示的数目。链接的url在【系统构建平台】à【菜单管理】中修改或添加。existable:是否显示退出按钮。默认为

烂泥:ubuntu下vsftpd虚拟用户配置_weixin_34212762的博客-程序员宅基地

本文由ilanniweb提供友情赞助,首发于烂泥行天下想要获得更多的文章,可以关注我微信ilanniweb。以前搭建vsftpd都是在centos下,本以为在ubuntu按照以前的步骤搭建即可。可是实际情况告诉我是,我太想当然了。经过一番的折腾终于把ubuntu下vsftpd虚拟用户的配置搞定了,下面就把我的配置步骤贴出来供得为参考。一、业务要求现在要求创建一个FTP账号ailanni,该账号只能...

深搜基础_bmxklYzj的博客-程序员宅基地

题目B - 搜索Time Limit:1000MS    Memory Limit:32768KB    64bit IO Format:%I64d & %I64uSubmitStatusDescriptionThe GeoSurvComp geologic survey company is responsible for detecting unde

java读取本地Excel文件,并返回list_慵懒奴的博客-程序员宅基地_java获取excel数据返回list

java读取本地Excel文件,并返回list1.写一个test测试方法2.Excel文件格式3.Menu实体类1.写一个test测试方法@Test public void test(){ File file = new File("C:\\Users\\picc\\Desktop\\gdwechat.xlsx"); System.out.println(file.getName());//获取文件名称 gdwechat.xlsx List<

qq空间html倒计时,空间倒计时flash代码,有图_weixin_39632693的博客-程序员宅基地

stop(); //停止_root.ss.xx1.onRollOver=function(){ //在主场景中的“ss”元件里的“xx1”元件添加按钮触及函数_root.onEnterFrame=function(){ //主场景进入侦函数处理_root.aa._x+=(1179-_root.aa._x)*0.2; //主场景的“aa”元件的X坐标=主场景“aa”元件+(1179-主场景“aa”元...

JavaWeb学习笔记_Kataware Doki的博客-程序员宅基地_表达式树的创建与输出

什么是JavaWebweb开发: web:网页的意思静态web heml,css 提供给所有人看的数据,不会发生变化动态web 提供给每个人的数据可能不一样 相关技术:Servlet/JSP,ASP,PHPWEB应用程序 指可以提供浏览器访问的程序; 如 a.html 。。。。多个web资源,可以被外界访问。对外界提供服务静态web *.h...

随便推点

hadoop2.6.0本地编译,仅作学习记录_weixin_30322405的博客-程序员宅基地

  官网下载hadoop二进制文件,安装部署,可以成功,但是每次运行命令之前均会报错Unable to load native-hadooplibrary for your platformhadoop,经查明为官网提供的是32位,但实际生产环境中一般均需要64位,下面就结合网上资料,整理编译64位hadoop2.6.0 的步骤。  编辑环境为:redhat6.6 +jdk1.7+had...

两个Access数据库之间的数据互导问题_weixin_34409822的博客-程序员宅基地

在当前项目中,需要将一个Access数据库中某个表中的部分数据导到另外的一个Access数据库中,为此曾想过多种办法,先是考虑使用Access的链接表,但是后来发现如果想在程序中实现链接,需要使用ADOX,又需要增加一个新的参考。后来又考虑使用程序把数据保存在程序的DataTable中,这样的办法当然不需要增加新的参考,但是实现起来也比较麻烦,毕竟SQL语句不好拼写,另外速度方面也有很大的降低。今...

利用对抗技术来权衡推荐精度与用户隐私_机器学习与推荐算法的博客-程序员宅基地

目录前言动机框架实验结果前言任何需要做两方权衡并且最终寻求一种平衡的问题其实都可以转化为对抗学习的范式,比如图像生成任务中既要保证生成图片的质量又要确保判别器的识别精度;推荐任务中既要保...

VS2010中添加Flash控件_CoderAndClimber的博客-程序员宅基地

一、准备工作第一步:下载并安装Adobe Flash Player。从官方网站(http://get.adobe.com/cn/flashplayer/)上下载最新的Flash Player(大约为2.66M),并安装。对于Windows 32位系统,其默认安装目录为:C:/WINDOWS/system32/Macromed/Flash/;对于64位系统,为:C:/Windows/

NDK(13)JNIEnv和JavaVM_banyinlve3147的博客-程序员宅基地

转自: http://www.cnblogs.com/canphp/archive/2012/11/13/2768937.html  JNIEnv是一个与线程相关的变量,不同线程的JNIEnv彼此独立。JavaVM是虚拟机在JNI层的代表,在一个虚拟机进程中只有一个JavaVM,因此该进程的所有线程都可以使用这个JavaVM。当后台线程需要调用JNI native时,在...

电脑知识大全之批量清除WPS/Word文档中的回车符_qq_13579c的博客-程序员宅基地

通常我们在使用WPS文字或者Word时,可能会因为复制 而产生很多的回车符;或者从网页复制的文字粘入Word时候 ,会带来大量换行符。怎样能批量去掉这些个小符号呢,下 面的方法马上告诉你! WPS文字或者Word中的回车符分为两种:一种为自带的 回车符,一种为网络文件产生的回车符,称之为换行符。 回车符清除方法如下:     编辑--> 替换--> 替换-->高级-->特殊字符-->选

推荐文章

热门文章

相关标签