zoukankan      html  css  js  c++  java
  • 四、MYSQL的数据类型

    类型选择原则

    1、储存空间越少越好;

    2、简单就好:例如整型比字符串更简单;

    3、尽量避免null;

    一、整数类型

      1、有tinyint(8位)、SMALLINT(16位)、MEDIUMINT(24位)、int(32位)、bigint(64位) 这5种;

      2、使用unsigned(无符号)能提升一倍的范围;

      3、MYSQL能为整型类型指定宽度,例如int(11),不过这不影响计算和储存,int(11)和int(20)是一样的;只是规定mysql一些客户端显示字符的个数;

    二、实数类型(浮点)

      

    三、字符串类型

      1、varchar:可变字符串长度,需要额外的储存空间保存字段长度,例如varchar(10)则需要11个字节的长度作为储存空间。更新的时候会产生碎片

        适合的使用场景:最长的长度比一般的长度大的多,平时很少修改;INNODB引擎会把过长的varchar变为BLOB;

      2、char:定长字符串,适合放MD5值等固定长度的字段,而且同样是char(10)和varchar(10),前者比后者少一个字节(varchar10需要11个字节);

      

       3、blob(二进制)和text(有字符集的类型)类型:两者都是

       4、enum枚举类型(以后再看

    四、时间类型

      一般的时间类型都是没有代替品的,唯一可能接近混淆的是datetime和timestamp

    五、范式化与反范式化

      范式化-为了更省磁盘空间,更新时候涉及的磁盘位置更少,但是牺牲了查询速度;

      反范式化-牺牲更多的磁盘空间,但是换来了查询的速度;

  • 相关阅读:
    hdu 4520 小Q系列故事——最佳裁判 解题报告
    hdu 4505 小Q系列故事——电梯里的爱情 解题报告
    hdu 4524 郑厂长系列故事——逃离迷宫 解题报告
    JAVA泛类型示例
    Perl多进程处理Web日志
    Perl单线程日志分析工具
    Perl DBI使用实例
    JAVA(时间对比排序程序)
    软件通信之HTTP通信协议
    Android中级之网络数据解析一之Json解析
  • 原文地址:https://www.cnblogs.com/yeyongjian/p/9407435.html
Copyright © 2011-2022 走看看