Administrator
发布于 2025-11-11 / 2 阅读
0
0

项目3.2 数据类型-字符串

定界符是什么

定界符是用于确定字符串边界的符号。定界符有两种:

  • 双引号

  • 单引号

SELECT "Hello World";
SELECT 'Hello World';

结论:形式不同,功能相同(都可以定义字符串)

SELECT "他的外号叫"胖子"哦"; -- 错误的
SELECT '他的外号叫"胖子"哦';
SELECT "She's a girl.";

结论:外单内双、外双内单

字符串类型是什么

字符串是使用单引号或双引号包裹的字符串序列。

char类型

用途:用存储固定长度的字符串。

语法: char(M)

  • M : 指字符串的最大字符长度

CREATE TABLE users(
  id int AUTO_INCREMENT PRIMARY KEY,
  name varchar(2),
  phone char(11)
);

varchar类型

用途:用存储可变长度的字符串。

语法: varChar(M)

  • M : 指字符串的最大字符长度

测试

INSERT INTO users(name,phone) 
VALUES 
("张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三","13331581086");

BINARY(M)

binary: 二进制

用途:用于存储固定长度的二进制字符串。

M: 表示最多存储的字节数

VARBINARY(M)

用途:用于存储可变长度的二进制字符串。

M: 表示最多存储的字节数

修改表结构

添加两列:name2, phone2

ALTER TABLE users
ADD name2 binary(2),
ADD phone2 varbinary(11);

插入数据

INSERT INTO users(name,phone,name2,phone2) 
VALUES 
("ab","11111111111","cd","22222222222");

查询结果

+----+--------+-------------+--------------+--------------------------+
| id | name   | phone       | name2        | phone2                   |
+----+--------+-------------+--------------+--------------------------+
|  1 | Js     | 13311581086 | NULL         | NULL                     |
|  2 | 张三   | 13331581086 | NULL         | NULL                     |
|  3 | ab     | 11111111111 | 0x6364       | 0x3232323232323232323232 |
+----+--------+-------------+--------------+--------------------------+
3 rows in set (0.001 sec)

TEXT

用途:用于保存非二进制的长文本数据。

例如:文章内容、评论等较长的文本。

四种类型:

  • TINYTEXT: 小文本(存储范围:255)

  • TEXT : 文本(存储范围:6万5千5百3十5)

  • MEDIUMTEXT(存储范围:16777215)

  • LONGTEXT(存储范围:42亿)

BLOB

在计算机领域,BLOB 的全称是 Binary Large Object,中文通常翻译为“二进制大对象”。简单来说,它就是一种用来处理大型二进制数据(比如图片、音频、视频等)的容器或数据类型。

用途:用于保存数据量很大的二进制数据。

比如:图片、声音、视频等二进制文件。

四种类型:

  • TINYBLOG

  • BLOG

  • MEDIUMBLOB

  • LONGBLOB

ENUM()

ENUM: 枚举(一一列举)

用途:用于存储字符串值列表。(枚举类型)

gender ENUM("男","女","保密")

SET()

SET: 集合

用途:用于存储字符串值列表。(集合类型)

语法

hobbies  SET("篮球","羽毛球","游泳","乒乓球")

插入数据

INSERT INTO users(name,phone,name2,phone2,gender,hobbies) 
VALUES 
("aa","11111111111","bb","22222222222","男","游泳,羽毛球");

ENUM和SET的区别

二者区别在于:

  • ENUM类型类似单选

  • SET类型类似于多选


评论