您的位置:首页 > 数据库 > MySQL

mysql 开发基础系列4 字符数据类型

2018-06-27 17:44 603 查看

字符串类型



  1.1 CHAR 和VARCHAR 类型

    CHAR 列的长度固定为创建表时声明的长度,VARCHAR 列中的值为可变长字符串。在检索的时候,CHAR 列删除了尾部的空格,而VARCHAR 则保留这些空格。(在sqlserver里都是长度2)

CREATE TABLE vc (v VARCHAR(4), c CHAR(4));
INSERT INTO vc VALUES ('ab ', 'ab ');
SELECT LENGTH(v),LENGTH(c) FROM vc;


  

 

  1.2 BINARY 和VARBINARY 类型

    BINARY 和VARBINARY 类似于CHAR 和VARCHAR,不同的是它们包含二进制字符串。

CREATE TABLE t (c BINARY(3));
INSERT INTO t VALUES('a');


  1.3 ENUM 类型 (ENUM 中文名称叫枚举类型) 插入1为M,2为F, 3则报错。 数字序号对应着字段数。

CREATE TABLE t1 (gender ENUM('M','F'));
-- 插入枚举类型的四种值
INSERT INTO t1 VALUES('M'),('1'),('f'),(NULL);
SELECT * FROM t1;


  可以看出ENUM 类型是忽略大小写的

  


  1.4 SET 类型

    Set 和ENUM 除了存储之外,最主要的区别在于Set 类型一次可以选取多个成员。 一行不会插入重复值如: a,d,a 保存后为a,d

CREATE TABLE t3 (col SET ('a','b','c','d'));
INSERT INTO t3 VALUES('a,b'),('a,d,a'),('a,b'),('a,c'),('a');
SELECT * FROM t3;


    


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: