写点什么

数据类型

用户头像
在即
关注
发布于: 2021 年 03 月 16 日
数据类型

BINARY 和 VARBINARY 类型类似于 CHAR 和 VARCHAR,

不同的是,它们所表示的是二进制数据。

BINARY(M) 或 VARBINARY(M)

M:二进制数据的最大字节长度。

BINARY 和 VARBINARY 类型

BINARY 类型的长度是固定的,如果数据的长度不足最大长度,将在数据的后面用“\0”补齐,最终达到指定长度。

例如:数据类型为 BINARY(3),

当插入 a 时,实际存储的数据为“a\0\0”,

当插入 ab 时,实际存储的数据为“ab\0”。

BINARY 和 VARBINARY 类型

BINARY 和 VARBINARY 使用示例

① 创建表,插入测试记录

mysql> CREATE TABLE my_binary (b1 BINARY(4), b2 VARBINARY(4));

mysql> INSERT INTO my_binary VALUES('abc', 'xyz');

② 查询记录,两次查询结果分别为“abc\0”和“xyz”(\0 显示为空格)

mysql> SELECT b1 FROM my_binary WHERE b1 = 'abc\0';

mysql> SELECT b2 FROM my_binary WHERE b2 = 'xyz';

③ 查询记录,由于区分大小写,查询结果都为空

mysql> SELECT b1 FROM my_binary WHERE b1 = 'ABC\0';

mysql> SELECT b2 FROM my_binary WHERE b2 = 'XYZ';

BLOB 类型:保存数据量很大的二进制数据。

BLOB 根据二进制编码进行比较和排序;

TEXT 根据文本模式进行比较和排序。

BLOB 使用示例

① 创建表,插入测试记录

mysql> CREATE TABLE my_blob (b BLOB);

mysql> INSERT INTO my_blob VALUES('data');

② 查询记录,查询结果为“data”

mysql> SELECT b FROM my_blob WHERE b = 'data';

③ 查询记录,由于区分大小写,查询结果为空

mysql> SELECT b FROM my_blob WHERE b = 'Data';

MySQL 从 5.7.8 版本开始提供了 JSON 数据类型。

作用:JSON 是一种轻量级的数据交换格式

由来:由 JavaScript 语言发展而来,其本质是一个字符串。

MySQL 中 JSON 类型值常见的表现方式有两种,分别为 JSON 数组 和 JSON 对象。

① JSON 数组

["abc", 10, null, true, false]

② JSON 对象

{"k1": "value", "k2": 10}

JSON 类型使用示例

① 创建表,插入测试记录

mysql> CREATE TABLE my_json (j1 JSON, j2 JSON);

mysql> INSERT INTO my_json VALUES

-> ('{"k1": "value", "k2": 10}', '["run", "sing"]');

② 查询记录

mysql> SELECT * FROM my_json;

+---------------------------+-----------------+

| j1 | j2 |

+---------------------------+-----------------+

| {"k1": "value", "k2": 10} | ["run", "sing"] |

+---------------------------+-----------------+

1 row in set (0.00 sec)

回见。

发布于: 2021 年 03 月 16 日阅读数: 9
用户头像

在即

关注

还未添加个人签名 2021.02.27 加入

还未添加个人简介

评论

发布
暂无评论
数据类型