首页 > 数据库 >mysql 常用的数据类型

mysql 常用的数据类型

时间:2023-03-18 13:12:48浏览次数:56  
标签:常用 VARCHAR 数据类型 CHAR BLOB mysql 长度 Data Types

官网文档地址:https://dev.mysql.com/doc/refman/8.0/en/data-types.html

常用的数据类型:

  • Numeric Data Types
  • Date and Time Data Types
  • String Data Types,Spatial Data Types,
  • The JSON Data Type,
  • Data Type Default Values
  • ....

Nameric Data Types数字类型:

  • 精确的数字数据类型(INTEGER、SMALLINT、DECIMAL和numeric),
  • 以及近似的数字数据种类(FLOAT、REAL和DOUBLE PRECISION)。

关键字INT是INTEGER的同义词,关键字DEC和FIXED是DECIMAL的同义词。MySQL将DOUBLE视为DOUBLE PRECISION(一种非标准扩展)的同义词。MySQL还将REAL视为DOUBLE PRECISION(一种非标准变体)的同义词,除非启用了REAL_as_FLOAT SQL模式。

有些属性并不适用于所有数据类型。AUTO_INCREMENT仅适用于整数和浮点类型。DEFAULT不适用于BLOB、TEXT、GEOMETRY和JSON类型。

Date and Time Data Types

  • date、time、DATETIME、TIMESTAMP和YEAR。

每个时态类型都有一系列有效值,以及一个“零”值,当您指定MySQL无法表示的无效值时,可以使用该值。

String Data Types,Spatial Data Types

  •  CHAR:

CHAR和VARCHAR类型相似,但存储和检索方式不同。它们在最大长度和是否保留尾部空间方面也有所不同。

CHAR和VARCHAR类型的声明长度指示要存储的最大字符数。例如,CHAR(30)最多可以容纳30个字符。 

CHAR列的长度固定为创建表时声明的长度。长度可以是0到255之间的任何值。当CHAR值被存储时,它们被用空格填充到指定的长度。检索CHAR值时,除非启用PAD_CHAR_TO_FULL_LENGTH SQL模式,否则会删除尾部空格。

VARCHAR列中的值是可变长度的字符串。长度可以指定为0到65535之间的值。VARCHAR的有效最大长度取决于最大行大小(65535字节,在所有列之间共享)和所使用的字符集。

  • VARCHAR

  • BINARY:BINARY和VARBINARY类型类似于CHAR和VARCHAR,只是它们存储二进制字符串而不是非二进制字符串。也就是说,它们存储的是字节字符串,而不是字符串。这意味着它们具有二进制字符集和排序规则,并且比较和排序是基于值中字节的数值
  • BLOB(VARBINARY二进制字符串 任意长):BLOB是一个二进制大对象,可以保存可变数量的数据。四种BLOB类型是TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们的区别仅在于它们可以保持的值的最大长度。四种TEXT类型是TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。它们对应于四种BLOB类型,并且具有相同的最大长度和存储要求。可以将BLOB列视为VARBINARY列,该列可以任意大。类似地,您可以将TEXT列视为VARCHAR列。BLOB和TEXT在以下方面与VARBINARY和VARCHAR不同:
  • TEXT(VARCHAR 字符串 任意长度 )
  • ENUM:不常用,详情参阅https://dev.mysql.com/doc/refman/8.0/en/enum.html
  • SET:不常用,详情参阅https://dev.mysql.com/doc/refman/8.0/en/set.html

 

JSON Data Type:JSON;

标签:常用,VARCHAR,数据类型,CHAR,BLOB,mysql,长度,Data,Types
From: https://www.cnblogs.com/lixiuming521125/p/17229753.html

相关文章

  • 【转载】集合中元素的数据类型可以不同,但集合中不能嵌套列表、元组、集合、字典
    1、问题根源:text={"a":{"aa":1,"b":2},"b":2,"c":3,"d":4,"e":5}list_dict=[{v:text[v]}forvintext]set(list_dict)输出:TypeError......
  • 数据类型转换、运算符
    day02数据类型太简单,没啥写的,略注意:空串""是长度为0的字符串。空串是一个Java对象,有自己的串长度(0)和内容(空)。不过,String变量还可以存放一个特殊的值,名为null,这表示目前......
  • MySQL行锁和表锁的含义及区别
    MySQL常用引擎有MyISAM和InnoDB,而InnoDB是mysql默认的引擎。MyISAM不支持行锁,而InnoDB支持行锁和表锁。如何加锁MyISAM在执行查询语句(SELECT)前,会自动给涉及的所有表加读......
  • MySQL中myisam与innodb的区别
    MyISAM不支持事务,但是每次查询都是原子的;支持表级锁,即每次操作对整个表加锁;存储表的总行数;一个MYISAM表有三个文件:索引文件、表结构文件、数据文件;采用非聚集索引,索......
  • Docker Mysql限制内存
    买了个阿里云的1G单核的服务器,运行了Docker装了数据库占用内存2/3的内存,然后再跑个Java小型程序直接死机,无奈只能减小mysql内存解决后效果:查询了网上资料总结解决方案:......
  • java基础_基本数据类型
    介绍鄙人才疏学浅,如有谬论,敬请指教。计算机储存容量单位讲解计算机储存容量基本单位就是字节(Byte),而字节下面还有一个比特>(bit),对应关系是一个字节=八个比特,比特(bit......
  • 枚举的常用方法
    publicclassEnumDemo{publicstaticvoidmain(String[]args){//1、Stringname():获取枚举项名称Stringname=Season.SPRING.name();......
  • maven常用命令和配置
     mavenpom中的parent标签:parent标签类似java中的继承,复用依赖,减少冗余配置 使用场景(when):在多模块(module)的项目中,有很多模块中的pom中存在相同的引用,如果此时声明一......
  • pip常用命令
    使用不同的镜像源,下载包的时候可能会出现版本不匹配。则可以直接使用pipinstall包名进行下载速查版pipfreezepiplistpipinstallopenpyxlpipinstallop......
  • Redis:我大哥是mysql
    Redis:我大哥是mysql本文说明:简单梳理redis的设计redis某种角度上只是mysql的手下的工具人1.缓存管理redis的出现:作为缓冲区、以免mysql被大量请求冲烂宕机如果同......