zoukankan      html  css  js  c++  java
  • MySQL 数据类型总结及选取准则

    整数

    整数有 TINYINT, SMALLINT, MEDIUMINT, INT 和 BIGINT 类型。

    占用    8          ,  16            24,            32,     64      bit。

    为整数指定长度没有意义,如 INT(11) ,它能存储的还是 32 位数据。

    实数

    DECIMAL 运算没有精度丢失。

    FLOAT,DOUBLE 运算有精度丢失。

    DECIMAL 可以存储准确的小数和整数位,如 DECIMAL(18,9)

    由于 DECIMAL 在空间占用上比较多,并且运算复杂,一般只用来存储不允许精度丢失,并且要得到准确的小数位数的场合,比如说金融数据。

    String 类型

    1. VCHAR 类型和 CHAR 类型

    VARCHAR 用来存储变长的字符数据,并且需要额外的一到两个字节来存储字符数据的长度。

    VARCHAR 一般用来存储 5000 字符以下的数据。

    CHAR 用来存储定长的字符数据。适用于列的长度都非常短或者存储数据的长度近似一致的场合。如 MD5,存储 Y,N 数据。

    2. BLOB 和 TEXT 类型

    BLOB 和 TEXT 用在存储大量数据(包括二进制和字符型)的场合。

    两者的区别在于,BLOB 存储的是二进制数据,而 TEXT 存储的是字符数据

    TEXT 一般用来存储 5000 字符以上的数据,对于这样的数据,应该单独独立出一张表,用 id 对应,以免影响母表的索引效率。

    3. 在一些场合,可以使用 enum 来代替 STRING 类型

    DATE 和 TIME 类型

    DATE 的精度是秒,格式是 YYYYMMDDHHMMSS,和时区无关。

    存储范围: 1001-9999

    TIMESTAMP 的精度是S,存储的是从1970.1.1 零点到当前过去的秒数。依赖于时区。

  • 相关阅读:
    iOS SpriteKit 字体设置无效问题
    2021又来到了!
    其他人员优点
    自己缺点记录
    领导优点分析-于总
    领导优点分析-黄总
    Linux CentOS 7 安装字体库 & 中文字体
    mysql备份数据库
    MySQL mysqldump 导入/导出 结构&数据&存储过程&函数&事件&触发器
    mysql 导入导出数据库以及函数、存储过程的介绍
  • 原文地址:https://www.cnblogs.com/reycg-blog/p/7918413.html
Copyright © 2011-2022 走看看