美文网首页简友广场城市故事想法
MySQL数据库(十一)——数据类型(4)二进制

MySQL数据库(十一)——数据类型(4)二进制

作者: 黑白色的天空 | 来源:发表于2019-11-27 09:23 被阅读0次

MySQL BIT、BINARY、VARBINARY、BLOB(二进制类型)

MySQL 支持两类字符型数据:文本字符串和二进制字符串。上节《MySQL数据库(十一)——数据类型(3)字符串》我们讲了文本字符串,这节我们来讲解二进制字符串。

二进制字符串类型有时候也直接被称为“二进制类型”。

MySQL 中的二进制字符串有 BITBINARYVARBINARYTINYBLOBBLOBMEDIUMBLOB 和 LONGBLOB

下表中列出了 MySQL 中的二进制数据类型,括号中的M表示可以为其指定长度。

MySQL 中的二进制数据类型

BIT 类型

位字段类型。M 表示每个值的位数,范围为 1~64。如果 M 被省略,默认值为 1。如果为 BIT(M) 列分配的值的长度小于 M 位,在值的左边用 0 填充。例如,为 BIT(6) 列分配一个值 b'101',其效果与分配 b'000101' 相同。

BIT 数据类型用来保存位字段值,例如以二进制的形式保存数据 13,13 的二进制形式为 1101,在这里需要位数至少为 4 位的 BIT 类型,即可以定义列类型为 BIT(4)。大于二进制 1111 的数据是不能插入 BIT(4) 类型的字段中的。

提示:默认情况下,MySQL 不可以插入超出该列允许范围的值,因而插入数据时要确保插入的值在指定的范围内。

BINARY 和 VARBINARY 类型

BINARY 和 VARBINARY 类型类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字节字符串。使用的语法格式如下:

列名称 BINARY(M) 或者 VARBINARY(M)

BINARY 类型的长度是固定的,指定长度后,不足最大长度的,将在它们右边填充 “\0” 补齐,以达到指定长度。例如,指定列数据类型为 BINARY(3),当插入 a 时,存储的内容实际为 “\a0\0”,当插入 ab 时,实际存储的内容为“ab\0”,无论存储的内容是否达到指定的长度,存储空间均为指定的值 M。

VARBINARY 类型的长度是可变的,指定好长度之后,长度可以在 0 到最大值之间。例如,指定列数据类型为 VARBINARY(20),如果插入的值长度只有 10,则实际存储空间为 10 加 1,实际占用的空间为字符串的实际长度加 1。

BLOB 类型

BLOB 是一个二进制的对象,用来存储可变数量的数据。BLOB 类型分为 4 种:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB,它们可容纳值的最大长度不同,如下表所示。

BLOB类型的长度

BLOB 列存储的是二进制字符串(字节字符串),TEXT 列存储的是非进制字符串(字符字符串)。BLOB 列是字符集,并且排序和比较基于列值字节的数值;TEXT 列有一个字符集,并且根据字符集对值进行排序和比较。

相关文章

  • MySQL数据库(十一)——数据类型(4)二进制

    MySQL BIT、BINARY、VARBINARY、BLOB(二进制类型) MySQL支持两类字符型数据:文本字...

  • Mysql 二进制包安装

    mysql 二进制安装: 1、上传二进制文件包2、解包并解压缩3、创建数据库所需用户4、创建数据库目录并授权5、添...

  • mysql之路之连接

    使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。 ...

  • MySQL数据库DDL、DML详解

    一、MySQL数据库数据类型 <1> MySQL数据库中支持多种数据类型 数值型 字符型 日期型 <2> 常用的数...

  • MYSQL复习

    mysql数据库学习 -- mysql里面的数据类型-- 数值-- 字符串-- 日期 -- 创建数据库?creat...

  • 表的数据类型即sql总结-基础篇

    表的数据类型即sql总结 在MySql数据库管理系统中,提供数值类型(整数型,浮点数,定点数类型,二进制类型),日...

  • MySql基本操作(一)

    从命令行中连接mysql服务器的简单实例 创建和删除数据库 选择数据库 数据类型 可参考:Mysql数据类型 数据...

  • PHP面试之数据库基础

    [TOC] 1. MySQL数据库基础 MySQL数据类型 整数类型 tinyint smallint mediu...

  • MySQL数据类型

    MySQL的数据类型大致分为:数值、时间和字符串 二进制 bit [(M)] 二进制位(10001),m表示二进制...

  • mysql二进制日志记录(一个问题牵扯出更多问题)

    mysql在开启二进制日志之后,是不能在会话级别关闭。 mysql在数据库恢复时,需要临时关闭二进制日志写入功能....

网友评论

    本文标题:MySQL数据库(十一)——数据类型(4)二进制

    本文链接:https://www.haomeiwen.com/subject/iumjwctx.html