• mysql 列类型以及属性特点


    整形列:

    一个字节有8个位,例如:int 类型的列存入数字1,00000000 00000000 00000000 00000001它就在最低位置上存入一个1,由此可见是极大的浪费资源,所以在建立列类型的时候,依实际情况而定。

    整型列的可选属性有:

    unsigned 非负

    zerofill 零填充 (M)M表示固定宽度,它主要用于学号编码等,可以用0填至固定宽度。注意:有零填充的列数据库默认为unsigned,即非负。

    例如:存入当前列数字1,固定宽度设置5,则存入数据库的数据显示为00001

    另一种情况如下:

    例如:如果没有零填充单纯的int(x)这种格式,x表示的是期望的宽度,(如 INT(4))。这个可选的宽度规格说明是用于在数值显示时,对某些值的宽度短于该列宽度的值进行左填补显示的,而不是为了限制在该列中存储值的宽度,也不是为了限制那些超过该列指定宽度的值的可被显示的数字位数,如果在一个整型列中存储一个超过显示宽度的更大值时,当 MySQL 为某些复杂的联结(join)生成临时表时,你可能会遇到问题,因为在这种情况下,MySQL 信任地认为所有的值均适合原始的列宽度。

    浮点列和定点列以及它们的区别:(都是存小数的)

    float(M,D)两个参数,M表示小数的总位数,D小数点后是几位,例如:float(5,2)最大存入999.99,最小存入-999.99

    double (M,D)与float的区别是范围比float大

    decimal 与float/double的区别主要是有精度损失,decimal更精确。decimal适合对数据要求比较严格的时候使用,比如涉及到钱。

    字符型列:M限制的是字符

    char(M) 定长  M取值范围0~255

    varchar(M)不定长0~65,535

    一般开发过程中,M比较短果断选择char,char执行速度快。

    text 文本存储内容较大 其他文本类型可查看mysql手册,blob不需要考虑字符集存二进制时使用。

    enum 是定义好值,也就是取值范围。例如:性别。

    set 集合型 可以选其中的一个或多个。

    日期时间类型列:

    year

    date

    time

    datetime

    一般存入数据库用的是unigx时间戳。

    存储引擎区别:

    未完待续~~~~~

    声地

  • 相关阅读:
    第19篇 2016年计划
    第18篇 我的中国梦
    Linux中文件实时同步
    Ansible Playbook
    Ansible简介及常用模块
    HTTP协议简单认识
    zabbix 分布式监控Proxy
    Zabbix中Agent自动注册
    Groovy基础语法
    Python文件操作
  • 原文地址:https://www.cnblogs.com/ccs-mxs/p/7096846.html
Copyright © 2020-2023  润新知