当前位置: 首页 > article >正文

【MySQL】数据类型

 目录

一、数据类型分类

二、数值类型

bit:

 tinyint:

​编辑

 smallint:

 memdiumint:

int:

bigint:

float:

​编辑

decimal:

三、文本类型

char:

字符的概念:

varchar:

 

四、时间类型

date:

 datetime×tamp:​编辑

 五、string类型

 enum:

 具体使用:​编辑

​编辑

 set:

使用方法: 

 查询语句的使用:​编辑


数据类型是一种约束,可以对插入的数据进行检查,如果不符合约束,那么就会终止。

一、数据类型分类

        数据类型分为四大类:数值类型、文本类型、时间类型、string类型。

二、数值类型

        有bit类型、int(tinyint, smallint, memdiumint, int, bigint)类型、float(decimal, double)类型、bool类型。

bit:

bit后跟的数字表示这个数据所占用的位数,显示时以ascii码进行显示。如果位数多于设定位数,则发生截断。

 tinyint:

占有1个字节。相当于c语言学过的char类型。范围是-128 ~ 127,无符号是0 ~ 255。

超过范围会进行告警。 

 smallint:

占有2个字节。两个字节16位,所以能表示的最大范围是-2^15+1 ~2^15 / 0 ~ 2^16。

 

越界同样报警,存储时按照最大值进行存储。 

 memdiumint:

占用3个字节,三个字节是24位,取值范围在-2^23+1 ~ 2^23 / 0 ~ 2^24。

int:

占用4个字节,四个字节是32位,取值范围在-2^31+1 ~ 2^31 / 0 ~ 2^32。

bigint:

占用8个字节,8个字节是64位,取值范围在-2^63+1 ~ 2^63 / 0 - 2^64。

float:

小数类型,形式为float(m,n),m是数字显示的位数,n是小数点后的位数(精度)。且遵守四舍五入的规则。

比如float(4,3)的取值范围就在±9.999之间。四舍五入的规则是用在第n+1位上的。

decimal:

规则同float一样,但是精度要比float高。

三、文本类型

分为char、varchar、blob、text。

char:

定长字符型,格式为:char(L),L为文本所占字符数。如果没有占完分配的空间,会用空格进行补齐强制占完。最大一个char可以用255个字符的空间。

字符的概念:

字符不同于c语言阶段学习的字符和字节概念。


在mysql中字符不同于字节,一个字符表示我们看到的一个符号就是一个字符,所以比如char(3)就可以放3个汉字。

由c语言代码测试可以知道一个汉字的字节数是3,但是在我们创建的char(3)中,存放了三个汉字,一共9个字节。

varchar:

动态长度的字符串类型,语法格式为:varchar(L),L是当前字符串的字符长度。最大一个varchar可以用65535个字节。

 

四、时间类型

有三种:date(日期,只包含年月日),datatime(日期时间,包含日期和时间),timestamp(时间戳)。

date:

 


 datetime&timestamp:

 五、string类型

包含两种类型,enum(枚举)和set(集合)。

 enum:

枚举类型,与c语言不同的是MySQL中的enum从1开始进行默认赋值。

 

 具体使用:

大小写会自动纠正 

 enum只能支持单个数据的插入。

 set:

set是一种集合类型,可以插入set中的多个值,也和enum一样从1开始进行赋值。

使用方法: 

 

 

 

 进行数字插入时,是按照二进制序列的规则插入。

如:5 -- 0101 也就是第一位和第三位的值会被插入。(从右向左)


 查询语句的使用:

 


http://www.kler.cn/a/1476.html

相关文章:

  • HTML - <script>,<noscript>
  • GPU算力平台|在GPU算力平台部署Qwen-2通义千问大模型的教程
  • MySql根据经纬度查询距离
  • 【可实战】Bug的判定标准、分类、优先级、定位方法、提交Bug(包含常见面试题)
  • 日语IT用语笔记
  • docker+ffmpeg+nginx+rtmp 拉取摄像机视频
  • EEPROM芯片(24c02)使用详解(I2C通信时序分析、操作源码分析、原理图分析)
  • 【LeetCode】1609. 奇偶树、1122. 数组的相对排序
  • 【C语言进阶】内存函数
  • Linux IPC:管道符的实现
  • 数据大放送之历史影像下载
  • SpringCloud微服务技术栈.黑马跟学(三)
  • Python04 数据序列-字符串
  • 动态规划-基础(斐波那契数、爬楼梯、使用最小花费爬楼梯、不同路径、不同路径II、整数拆分、不同的二叉搜索树)
  • Leetcode 6322. 检查骑士巡视方案 暴力模拟法 第337场周赛,第二题
  • Java学习星球,Java学习路线
  • 【数据结构】第三站:单链表
  • C语言实现单链表(超多配图,这下不得不学会单链表了)
  • 如何通过openssl生成公钥和私钥?
  • 人脸活体检测系统(Python+YOLOv5深度学习模型+清新界面)
  • elasticsearch 环境搭建和基本操作
  • ETH RPC搭建
  • echart图表之highcharts
  • vue2前端实现html导出pdf功能
  • 灾难性遗忘(catastrophic forgetting)学习笔记
  • Linux中的标准IO【上】