加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

CHAR 和 VARCHAR 范例

发布时间:2021-05-23 17:39:22 所属栏目:编程 来源:互联网
导读:CHAR(M) 为牢靠长度字符串,在界说时指定字符串列长。当生涯时,在右侧添补空格以到达指定的长度。M 暗示列的长度,范畴是 0~255 个字符。 譬喻,CHAR(4) 界说
CHAR(M) 为牢靠长度字符串,在界说时指定字符串列长。当生涯时,在右侧添补空格以到达指定的长度。M 暗示列的长度,范畴是 0~255 个字符。

譬喻,CHAR(4) 界说了一个牢靠长度的字符串列,包括的字符个数最大为 4。当检索到 CHAR 值时,尾部的空格将被删除。

VARCHAR(M) 是长度可变的字符串,M 暗示最大列的长度,M 的范畴是 0~65535。VARCHAR 的最大现实长度由最长的行的巨细和行使的字符集确定,而现实占用的空间为字符串的现实长度加 1。

譬喻,VARCHAR(50) 界说了一个最大长度为 50 的字符串,假如插入的字符串只有 10 个字符,则现实存储的字符串为 10 个字符和一个字符串竣事字符。VARCHAR 在值生涯和检索时尾部的空格仍保存。

【实例】下面将差异的字符串生涯到 CHAR(4) 和 VARCHAR(4) 列,声名 CHAR 和 VARCHAR 之间的不同,如下表所示。

插入值 CHAR(4) 存储需求 VARCHAR(4) 存储需求
' '   '    '   4字节   ''   1字节  
'ab'   'ab  '   4字节   'ab'   3字节  
'abc'   'abc '   4字节   'abc'   4字节  
'abcd'   'abcd'   4字节   'abcd'   5字节  
'abcdef'   'abcd'   4字节   'abcd'   5字节  

比拟功效可以看到,CHAR(4) 界说了牢靠长度为 4 的列,无论存入的数据长度为几多,所占用的空间均为 4 个字节。VARCHAR(4) 界说的列所占的字节数为现实长度加 1。
TEXT 范例 TEXT 列生涯非二进制字符串,如文章内容、评述等。当生涯或查询 TEXT 列的值时,不删除尾部空格。

TEXT 范例分为 4 种:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。差异的 TEXT 范例的存储空间和数据长度差异。

TINYTEXT 暗示长度为 255(28-1)字符的 TEXT 列。

TEXT 暗示长度为 65535(216-1)字符的 TEXT 列。

MEDIUMTEXT 暗示长度为 16777215(224-1)字符的 TEXT 列。

LONGTEXT 暗示长度为 4294967295 或 4GB(232-1)字符的 TEXT 列。

ENUM 范例 ENUM 是一个字符串工具,值为表建设时列划定中列举的一列值。其语法名目如下: <字段名> ENUM( '值1', '值1', …, '值n' ) 字段名指将要界说的字段,值 n 指列举列表中第 n 个值。

ENUM 范例的字段在取值时,能在指定的列举列表中获取,并且一次只能取一个。假如建设的成员中有空格,尾部的空格将自动被删除。

ENUM 值在内部用整数暗示,每个列举值均有一个索引值;列表值所应承的成员值从 1 开始编号,MySQL 存储的就是这个索引编号,列举最多可以有 65535 个元素。

譬喻,界说 ENUM 范例的列('first','second','third'),该列可以取的值和每个值的索引如下表所示。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读