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

[mysql]数据类型精讲下

目录

ENUM类型

SET类型

二进制字符串类型

BLOB类型

JSON类型

空间类型

小结:

课后练习


ENUM类型

也被叫枚举类型,

就是因为这里面都是文本字符串类型,所以经常被归类到文本字符串类型.

这里我们插入数据的时候,就必须是在这5个类型中选择

这里大写的也可以插入,因为mysql是忽略大小写的.如果我们输入数字代表的就是对应的位置,比如春代表的就是1,夏代表2,...字符串数字也可以.并且我们是可以输入NULL值.

SET类型

SET类型代表的就是可以输入多个类型

,,比如A,B,C,A

看这个表格就可以知道,我们set和ENUM是什么时候使用了.

开发的时候我们用char和varchar会比较多一些

二进制字符串类型

BINARY与VARBINARY类型

储存视频和图片等二进制类型

BINARY代表是就是固定长度的二进制字符串

VARBINARY(M)代表的是可变长度的二进制字符串,M表示是最多能储存的字节

M是必须填写的,和我们的char和varchar是很相似的

这里重要的区别就是长度测试的时候,无论什么时候长度都是设定的长度BINARY

BLOB类型

存储图片和音频类型

我们一般不会用它来存储图片和音频,我们会把它的内存存储到数据库的磁盘中,然后将本地链接存储到数据库中.

然后查看这个表,点击对应的空来导入图片和音频.

TEXT和BLOB如果删除后会留下很大的空洞,

除非前缀索引否则尽量不要使用SELECT查询

储存BLOB和text的时候最好还是让他们单独一个表,避免执行查询的时候网络传输大量的BLOB和TEXT的值

JSON类型

是一个多层嵌套表的格式,是一种轻量的数据交换格式.比如我们要查询

这里我们也是用字符串格式来存储json格式,但是这个字符串是固定格式的,我们是可以使用->来操作json格式的

比如我想要表test_json中的字段js的name内容,那么我就可以使用

SELECT  js ->’$.name’ AS NAME

FROM test_json

这样我们就可以获取到NAME字段

空间类型

这个到时候要用的时候大家再具体搜索,

小结:

如果数据是整数就使用INT,如果是小数,就使用DECIMAL(M,D)如果是日期和时间就使用DATETIME,确保你的系统不会因为数据类型定义储存,效率不是最高的.但是可靠性是最大的

字符串的选择就参考阿里巴巴的开发手册:

1.任何字段如果是非负数,就必须使用UNSIGNED

2.小数全部使用DECIMAL

FLOAT和DOUBLE都存在精度损失的问题,很可能在比较值的时候得到错误的结果,如果存储的数据范围超过了DECIMAL的时候就分为整数和小数

  1. 如果字符串短或字符串长度差不多,就使用CHAR
  2. VARCHAR在你的字符串不确定长度的时候使用,长度长且变化大的情况下使用VARCHAR,当长度超过了5000的时候就不能在使用varchar,要使用TEXT了TEXT要记得单独建立一个表,因为TEXT操作的时候容易出现空洞导致文件碎片化.所以最好还是单独建立一个表使,原表的文档字段长度固定.

课后练习

掌握mysql规范的各种数据类型

熟悉数据类型常设置的属性

DECIMAL一定要加上M和D,UNSIGN非负属性之类的

掌握不同类型的使用场景

相关文章:

  • 用go从零构建写一个RPC(仿gRPC,tRPC)--- 版本1
  • Synology HDD db - 群晖硬盘兼容性数据库工具
  • Linux0.11内存管理:相关代码
  • DeepSeek系列(9):团队协作最佳实践
  • 数字喜好判断之谜
  • 财务管理域——绩效管理系统设计
  • 代理专栏总结
  • 【微知】/proc中如何查看Linux内核是否允许加载内核模块?(/proc/sys/kernel/modules_disabled)
  • SpringBoot UserAgentUtils获取用户浏览器 操作系统设备统计 信息统计 日志入库
  • Arduino+ESP01S烧录
  • 【数据结构】优先级队列
  • 基于共享上下文和自主协作的 RD Agent 生态系统
  • 【计算机网络】TCP的四种拥塞控制算法
  • 驱动开发(1)|鲁班猫rk356x内核编译,及helloworld驱动程序编译
  • 学习设计模式《六》——抽象工厂方法模式
  • Android Gradle插件开发
  • 4月26日随笔
  • 毕业项目-基于深度学习的入侵检测系统
  • asammdf 库的信号处理和数据分析:深入挖掘测量数据
  • CSS 定位学习笔记
  • 演员刘美含二手集市被曝售假,本人道歉
  • 人民日报评论员:汇聚起工人阶级和广大劳动群众的磅礴力量
  • 北汽蓝谷一季度净亏损9.5亿元,拟定增募资不超60亿元
  • 见证上海援藏30年成果,萨迦非遗珍品展来沪
  • 戴昕谈隐私、数据、声誉与法律现实主义
  • 委员呼吁提高政府机构电话号码准确性,辽宁阜新回应