字符串类型

  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'),(''),('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;

    

  

mysql 开发基础系列4 字符数据类型的更多相关文章

  1. mysql 开发基础系列3 日期数据类型

    日期类型 如果要用来表示年月日,通常用DATE 来表示. 如果要用来表示年月日时分秒,通常用DATETIME 表示. 如果只用来表示时分秒,通常用TIME 来表示. TIMESTAMP表示格式 :YY ...

  2. mysql 开发基础系列12 选择合适的数据类型(上)

    一. char 与varchar比较 在上图的最后一行的值只适用在"非严格模式",关于严格模式后面讲到.在“开发基础系列4“ 中讲到CHAR 列删除了尾部的空格.由于char是固定 ...

  3. mysql 开发基础系列13 选择合适的数据类型(下)

    一.  BloB和Text 1. 合成索引 合成索引可以提高大文本字段BLOB和Text的查询性能, 合成索引是在表中增加一个字段存放散列值,这种技术只能用于精确匹配的查询,可以使用md5()或sha ...

  4. mysql 开发基础系列2 整型数据类型

    Mysql 的数据类型 1. 对整数类型, Mysql 还支持类型名称后面的小括号内指定的显示宽度,例如int(5) 表示宽度小于5位时填满宽度,如果不显示指定宽度默认是int(11),一般配合zer ...

  5. mysql 开发基础系列22 SQL Model

    一.概述 与其它数据库不同,mysql 可以运行不同的sql model 下, sql model 定义了mysql应用支持的sql语法,数据校验等,这样更容易在不同的环境中使用mysql. sql ...

  6. mysql 开发基础系列17 存储过程和函数(上)

    一. 概述 存储过程和函数是事先经过编译并存储在数据库中的一段sql语句集合,可以简化应用开发人员的很多工作,减少数据在数据库与应用服务器之间的传输,提高数据处理效率是有好处的.存储过程和函数的区别在 ...

  7. mysql 开发基础系列15 索引的设计和使用

    一.概述 所有mysql 列类型都可以被索引,是提高select查询性能的最佳方法. 根据存储引擎可以定义每个表的最大索引数和最大索引长度,每种引擎对每个表至少支持16个索引,总索引长度至少为256字 ...

  8. mysql 开发基础系列14 字符集

    字符集是一套文字符号及其编码,比较规则的集合.第一个字符集是ascll(american standard code for information interchange).  1.  选择合适的字 ...

  9. mysql 开发基础系列5 字符串函数

    字符串函数 1.  concat (s1,s2,...sn) 连接里面的参数成一个字符串(注意上面写错了函数名称) SELECT CONCAT('ddd','CCC'); 2.  insert(str ...

随机推荐

  1. 打开手机模拟器后adb devices查看不到设备连接

    1.找到sdk\platform-tools目录下的adb.exe,将该adb.exe复制到模拟器安装目录下覆盖模拟器自带的adb.exe就可以了.

  2. 高斯混合模型(GMM) - 混合高斯回归(GMR)

    http://www.zhihuishi.com/source/2073.html 高斯模型就是用高斯概率密度函数(正态分布曲线)精确地量化事物,将一个事物分解为若干的基于高斯概率密度函数(正态分布曲 ...

  3. 《数学之美》--第一章:文字和语言 vs 数字和信息

    PDF下载 第一章 文字和语言 vs 数字和信息 数字.文字和自然语言一样,都是信息的载体,它们之间原本有着天然的联系.语言和数学的产生都是为了同一个目的-记录和传播信息.但是,直到半个多世纪前香农博 ...

  4. node 项目中 koa2 环境搭建 以及项目发布

    环境搭建: 1.Koa 必须使用 7.6 以上的版本.如果你的版本低于这个要求,就要先升级 Node. 查看node版本方法:node -v 2.使用koa-generator生成器生成项目 安装ko ...

  5. Spring Boot不同版本整合Redis的配置

    1. Spring Boot为1.4及其他低版本 1.1 POM.XML配置 <!--引入 spring-boot-starter-redis(1.4版本前)--> <depende ...

  6. MySQL数据库(五)使用pymysql对数据库进行增删改查

    折腾好半天的数据库连接,由于之前未安装 pip ,而且自己用的python 版本为3.6. 只能用 pymysql 来连接数据库,(如果有和我一样未安装 pip 的朋友请 点这里http://blog ...

  7. Jsp处理过程and数据交互

    request处理客户端请求 客户端-------------->jsp页面--------------->服务器 常用方法 1.String getParameter(String na ...

  8. DOM对象和jQuery对象的转换

    <script type="text/javascript"> //js的页面加载事件 window.onload = function () { //获取DOM对象 ...

  9. 20145232韩文浩 《网络对抗技术》 Web安全基础实践

    问题回答 SQL注入攻击原理?如何防御? 原理:SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,使 ...

  10. STM32的SWD调试进不了main函数

    玩了那么久STM32,还没有用SWD调试过程序(一直都是用printf调试程序),觉得有些落后了,于是开始搞起了SWD调试. 很快通过查阅资料,知道了keil里面的配置和ST-Link与STM32的连 ...