首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL 系列教程之(四)MySQL 数据类型

    一、MySQL数据类型 数据类型是定义列可以存储什么类型的数据以及该数据实际怎样存储的基本规则 数据类型限制存储在数据列列的数据。...回答:因为性能,MySQL处理定长列远比处理变长列快得多。 [在这里插入图片描述] --- 2、数值类型 数值数据类型存储数值。MySQL支持多种数值数据类型,每种存储 的数值具有不同的取值范围。...支持的取值范围越大,所需存储空 间越多 与字符串不一样,数值不应该括在引号内 [在这里插入图片描述] decimal(5, 2) 表示数值总共5位, 小数占2位 tinyint 1字节(8位) MySQL...没有专门存储货币的数据类型,一般情况下使用DECIMAL(8, 2) 有符号或无符号 所有数值数据类型(除BIT和BOOLEAN外)都可以有符号或无符号 有符号数值列可以存储正或负的数值 无符号数值列只能存储正数...要求 记录一旦插入到表,主键最好不要再修改 不允许NULL 不在主键列中使用可能会更改的值。 (例如,如果使用一个名字作为主键以标识某个供应商,当该供应商合并和更改其名字时,必须更改这个主键。)

    1.6K83

    Mysql8.0的Json数据类型

    场景 在某张表存在一个字段数据类型是一个Json,这个字段保存的数据格式是一个JsonArray,其中每个JsonObject都有一个属性为UUID,现在我们有以下两个需求 1、 根据UUID查询出对应的...(@Param("uuid") String uuid); 上述machine_wording就是存放这个JsonArray的字段名称 通过json_extract函数可以获取到JsonArray的第一个...JsonObject,然后通过json_extract函数获取到该JsonObject的uuid属性,然后与传入的uuid进行比较,如果相等则返回该JsonObject 根据UUID查询出对应的JsonObject...并且将其删除,并保留该JsonArray的其他数据 首先使用我上边deleteJsonObjectByUuid方法时会在特殊环境下产生一些问题 出现问题的场景 当我们的machine_wording字段的...JsonArray的JsonObject为一个的时候会出现删除不掉的问题 产生问题的原因是对应的sql是先找到UUID不等于传入的时候他就会拿到所有不等于的然后更新到这个字段,相当于删掉了,所以当只有一个的时候他找不到然后没有办法更新上去

    28030

    MySQL blob 和 text 数据类型详解

    前言: 前面文章我们介绍过一些常用数据类型的用法,比如 int、char、varchar 等。一直没详细介绍过 blob 及 text 类型,虽然这两类数据类型不太常用,但在某些场景下还是会用到的。...本篇文章将主要介绍 blob 及 text 数据类型的相关知识。...不过数据库并不适合直接存储图片,如果有大量存储图片的需求,请使用对象存储或文件存储,数据库可以存储图片路径来调用。...0 - 65 535字节 长文本字符串 MEDIUMTEXT 0 - 16 772 150字节 较大文本数据 LONGTEXT 0 - 4 294 967 295字节 极大文本数据 不过在日常场景,...而 varchar(M) 的 M 指的是字符数,一个英文、数字、汉字都是占用一个字符,即 tinytext 可存储的大小并不比 varchar(255) 多。

    7.1K30

    MySQL数据类型和schema优化

    最近在学习MySQL优化方面的知识。本文就数据类型和schema方面的优化进行介绍。 ? 1. 选择优化的数据类型 MySQL支持的数据类型有很多,而如何选择出正确的数据类型,对于性能是至关重要的。...以下几个原则能够帮助确定数据类型: 更小的通常更好 应尽可能使用可以正确存储数据的最小数据类型,够用就好。这样将占用更少的磁盘、内存和缓存,而在处理时也会耗时更少。...在MySQL,还可以为整数类型指定宽度,例如INT(1),但这样的意义并不大,并不会限制值的合法范围,仍能存储-2^31至2^31-1的值,所影响的是与MySQL的交互工具显示字符的个数。...加快ALTER TABLE操作的速度 当MySQL在执行ALTER TABLE操作时,往往是新建一张表,然后把数据从旧表查出并插入到新表,再删除旧表,如果表很大,这样需要花费很长时间,且会导致MySQL...参考 《高性能MySQLMySQL DECIMAL 数据类型(https://my.oschina.net/u/559356/blog/3057960)

    1.2K10

    MySqlMySql数据类型

    数据类型分类 对于数据类型分类,这里简单分为数值类型(如BIT,BOOL,INT),文本、二进制类型(如CHAR,VARCHAR),时间日期(DATE),String类型(如ENUM类型),这里简单了解一下即可...of range value for column 'num' at row 1 mysql> 用tinyint unsigned数据类型创建表t2: mysql> create table if not...反过来,我们如果已经有数据被插入到MySql中了,一定是插入的时候是合法的 所以MySql中一般而言,数据类型本身也是一种约束,约束程序员尽可能进行正确的插入,约束使用者,如果你不是一个很好的使用者,...就能保证数据库的数据是可预期,完整的 MySql建立属性列:列名称 类型在后,如num tinyint unsigned; 这是tinyint类型我们所需要注意的,同时,尽量不使用unsigned...decimal decimal也是mysql的浮点数类型,float存储数据时,小数比较大,或者小数位点比较多存储的就不太准确了,这与浮点数存储规则有关(mysql的float浮点数精度为是7)。

    24830

    MySQL 数据类型

    MySQL定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。...---- 数值类型 MySQL支持所有标准SQL数值数据类型。...这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。...BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。 作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。...在存储或检索过程不进行大小写转换。 BINARY和VARBINARY类类似于CHAR和VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。

    1.7K20

    MySQL 数据类型

    数值类型 MySQL支持所有标准SQL数值数据类型。...这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。...BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。 作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。...每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。 TIMESTAMP类型有专有的自动更新特性,将在后面描述。...在存储或检索过程不进行大小写转换。 BINARY和VARBINARY类类似于CHAR和VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。

    1.9K40

    MySQL 数据类型

    学会自定义表每一个字段(列)的数据类型,对学习SQL数据库以及性能调优有着很大的帮助! 数据类型是啥?...它可以用来表示某个 字段(列) 的数据内容格式是数字(例123)还是字符(例"一二三") ,可以控制字段的字符长度和硬盘占用空间; MySQL常用数据类型:[数值]、[日期时间]和[字符串]类型。...一、数值 1、整型 MySQL数据类型 含义(有符号) tinyint 1个字节范围(-128~127) smallint 2个字节范围(-32768~32767) mediumint 3个字节范围(-...int(m)里的m是表示SELECT查询结果集中的显示宽度,无实际意义,不影响实际的取值范围 2、浮点型 MySQL数据类型 含义 float(m,d) 单精度浮点型8位精度(4字节)m总个数,d小数位...浮点型在数据库存放的是近似值,而定点类型在数据库存放的是精确值,一般用来计算或存储货币金额。如果确定数据长度以及小数点位数则采用定点数据类型

    1.8K20

    MYSQL数据类型

    一、数据类型分类 ---- 二、INT类型 1.tinyint类型 (1)有符号 tinyint类型的数据范围为-128~127 我们创建好一张表,其中成员age的类型为tinyint。...当我们插入一个超过范围的数据时,我们会发现会插入失败,由此我们可以得到一个结论:我们成功插入到MYSQL的数据,一定是合法的。这样能够约束程序员尽可能的插入正确的数据。...(2)无符号   在MySQL,整型可以指定是有符号的和无符号的,默认是有符号的。...我们建表时在bit类型后面加的括号的数字是选择开几个比特位的大小。  这里显示‘A’的原因是默认使用了16进制,A在十六进制是10。...当插入的数字太大的时候,会出现精度丢失的问题 当我们设定float类型为unsigned时,并不是和int一样把负数的范围加到整数上,mysql在处理小数类型时会直接除去负数那部分范围,保留正数范围。

    24630

    MySQL 数据类型

    MySQL定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。...---- 数值类型 MySQL支持所有标准SQL数值数据类型。...这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。...BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。 作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。...在存储或检索过程不进行大小写转换。 BINARY和VARBINARY类类似于CHAR和VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。

    1.4K70
    领券