(2.5)Mysql之SQL基础——数据类型

关键词:mysql数据类型

  

目录:

  一、整数型

  二、小数型(以下均不能使用无符号)

  三、日期时间型

  四、字符串型

一、整数型

  

  额外参数示例:

  int [(n)] [unsigned] [zerofill]

  【1】int(4) :显示的宽度,默认为11位,这个并不影响正常情况的显示和存储(不会影响宽度大于这个定义的值)。

        当int字段类型设置为无符号填充零(UNSIGNED ZEROFILL)时,当数值位数未达到设置的显示宽度时,会在数值前面补充零直到满足设定的显示宽度。

        为什么会有无符号的限制呢,是因为ZEROFILL属性会隐式地将数值转为无符号型,因此不能存储负的数值。 

  【2】UNSIGNED :无符号数据类型

  【3】ZEROFILL:0填充,当数据位不慢时,会进行0填充,如int(4),如果列数据值为1,则会显示为0001.(该选项必定是无符号的)

二、小数型(以下均不能使用无符号)

  

  【1】定点:decimal (每位小数占一个字节,必须写MD) 【2】浮点:float(4字节)、double(8字节)(可以不写MD)

  使用:decimal/float/double(M,D)   ,M为总位数,D为小数位数。比如当M为10D为2时,则为 8位整数即2位小数。

  float(M,D) :如果不写MD,则自动处理M为7左右

  double(M,D) :如果不写MD,则自动处理M为15左右

  注意:

    【1】如果数据不满足定义的小数位D,则后置补0。

        例如:float(5,3) ,数值为1.1 则自动填充为 1.100

    【2】如果前置不满足M且使用了zerofill,则只有1-9会前置填充1个0,否则不填充(定点与浮点有区别);

        浮点数:float(6,2) zerofill 当值为1.1  -》 01.10      当值为12.1 -》 12.10

        定点数:decimal(6,2) zerofill 当值为1.1  -》 0001.10      当值为12.1 -》 00012.10

    【3】如果数值的小数位大于D的定义,则会四舍五入;

        例如:float(5.2)  当值为1.236 -》 1.24

三、日期时间型

  

四、字符串型

  

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-65535 字节 变长字符串
TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节 短文本字符串
BLOB 0-65 535字节 二进制形式的长文本数据
TEXT 0-65 535字节 长文本数据
MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LONGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据
ENUM 0~65535 枚举类型
SET     集合类型

  注意

    (1)字符集的区别:【1】UTF8:1个字符占用3个字节  【2】GBK:1个字符占用2个字节

    (2)char与varchar:【1】char:会自动删除后置空格(但会保留前置)

(2.5)Mysql之SQL基础——数据类型的更多相关文章

  1. (2.16)Mysql之SQL基础——函数

    (2.16)Mysql之SQL基础——函数 关键词:mysql函数,mysql自定义函数,mysql聚合函数,mysql字符串函数,mysql数值函数 1.自定义函数 -- (1)一般形式 creat ...

  2. (2.15)Mysql之SQL基础——开发设计最佳规范

    (2.15)Mysql之SQL基础——开发设计最佳规范 关键字:mysql三大范式,mysql sql开发规范 分析: show profile.mysqllsla.mysqldrmpslow.exp ...

  3. (2.14)Mysql之SQL基础——游标

    (2.14)Mysql之SQL基础——游标 关键词:Mysql游标 -- (1)定义游标 declare cur_name cursor for select * from table_name wh ...

  4. (2.13)Mysql之SQL基础——触发器

    (2.13)Mysql之SQL基础——触发器 关键词:Mysql触发器 1.一般形式 -- 0.查看触发器[1]SHOW TRIGGERS;[2]SELECT * FROM `information_ ...

  5. (2.11)Mysql之SQL基础——存储过程与变量

    (2.11)Mysql之SQL基础——存储过程 关键字:mysql存储过程 查看存储过程: []SELECT * FROM information_schema.ROUTINES WHERE ROUT ...

  6. (2.10)Mysql之SQL基础——约束及主键重复处理

    (2.10)Mysql之SQL基础——约束及主键重复处理 关键词:mysql约束,批量插入数据主键冲突 [1]查看索引: show index from table_name; [2]查看有约束的列: ...

  7. (2.9)Mysql之SQL基础——索引的查看与删除

    (2.9)Mysql之SQL基础——索引的查看与删除 关键词:mysql索引查看,mysql索引删除 1.索引查询(以下包括主键,唯一,普通,复合,全文,但不包括外键) (1)按库查询 select ...

  8. (2.8)Mysql之SQL基础——索引的分类与使用

    (2.8)Mysql之SQL基础——索引的分类与使用 关键字:mysql索引,mysql增加索引,mysql修改索引,mysql删除索引 按逻辑分类: 1.主键索引(聚集索引)(也是唯一索引,不允许有 ...

  9. (2.7)Mysql之SQL基础——表的操作与查看

    (2.7)Mysql之SQL基础——表的操作与查看 搜索关键字:mysql表操作,comment注释操作,mysql临时表 0.临时表 create temporary table 1.创建表(在in ...

随机推荐

  1. 数学分析 + 容斥原理 - URAL 1907 Coffee and Buns

    Coffee and Buns Problem's Link: http://www.bnuoj.com/v3/contest_show.php?cid=6415#problem/H Mean: 给定 ...

  2. 关于Unity5.5中2D动画的制作

    1.首先要创建一个精灵 GameProject--2Dproject--Sprite 叫bird 2.给这个精灵附加纹理,并让它显示自己想让它显示的场景层中,一般它的静止纹理就是动画的第一张图片 3. ...

  3. 在MVC设计模式中,JavaBean的作用是。(选择1项)

    A.Controller B.Model C.业务数据的封装 D.View 解答:B

  4. 蓝桥杯 历届试题 剪格子(dfs搜索)

    历届试题 剪格子 时间限制:1.0s   内存限制:256.0MB 问题描述 如下图所示,3 x 3 的格子中填写了一些整数. +--*--+--+ |* || +--****--+ ||* | ** ...

  5. LoadRunner Error code 10053,Software caused connection abort

    发现问题的应用场景  C/S结构程序,请求响应采用异步机制.即客户端发送一个请求后不是一直等待这个结果,客户端将请求存放在请求队列并获得一个JOBID,服务器运行后将运行结果存放在响应队列,客户端定时 ...

  6. python3----datetime模块分析

    datetime模块用于是date和time模块的合集,datetime有两个常量,MAXYEAR和MINYEAR,分别是9999和1. datetime模块定义了5个类,分别是 1.datetime ...

  7. mac os x 记录 转载

    转载:远景网友(手机锋友t5sd3sf):http://bbs.feng.com/read-htm-tid-10434256.html 一个命令制作 OS X 原版安装U盘 1.要保证下载的原版安装包 ...

  8. ios开发之 -- 单例类

    单例模式是一种软件设计模式,再它的核心结构中指包含一个被称为单例类的特殊类. 通过单例模式可以保证系统中一个类只有一个势力而且该势力易于外界访问,从而方便对势力个数的控制并节约系统资源.如果希望在系统 ...

  9. ios 的EditBox点击空白处不隐藏的解决方案

    原因:参数少了前缀CC 解决方案:修改 cocos/platform/ios/CCEAGLView-ios.mm 中的 handleTouchesAfterKeyboardShow -(void) h ...

  10. UILabel 行间距设置

    NSMutableAttributedString * attributedString1 = [[NSMutableAttributedString alloc] initWithString:te ...