zoukankan      html  css  js  c++  java
  • mysql学习笔记--数据类型

    一、整型

      1. 有符号整型

        类型    字节    范围

        TINYINT     1    -27 ~ 27-1

        SMALLINT  2    

        MEDIUMINT    3    

        INT     4

        BIGINT    5

      2. 无符号整型:unsigned

      3. 支持显示宽度 int(5), 必须结合zerofill使用

    二、浮点型

      1. 类型

        float(单精度)  4字节  

        double(双精度)  8字节

      2. 浮点数声明:float(M, D), double(M, D), 总位数是M,小数位数是D,整数位数为M-D,如果精度超出了小数范围,会四舍五入

      3. 浮点数存的是近似数,精度可能丢失。

    三、定点数

      1. 类型

        decimal(M, D), 总位数是M,小数位数是D,整数位数是M-D

      2. 定点数是变长的

      3. 浮点数和定点数都支持显示宽度和无符号数。

    四、字符型

      1. 类型

        char(长度)  定长  最大255

        varchar(长度)  变长  最大65535

        tinytext     大段文本  255

        text     大段文本  65535

        mediumtext  大段文本  224 - 1

        longtext    大段文本  232 - 1

      2. char和varchar的区别

        相同点:它们最多能保留10个字符

        不同点:char不回收富余字节,varchar会回收富余字节。char效率高,浪费内存,varchar节省空间,效率比char低。

      3. char的最大长度为255,varchar最大长度为65535,实际根本达不到,具体长度和字符编码有关。

      4. 一个记录总长度不能超过65535个字节

      5. 大块文本不计算在总长度中,一个大块文本只占用10个字节来保存文本的地址。

    五、枚举(enum)

      1. 从集合中选择一个数据(单选)

      2. mysql的枚举类型是通过整数来管理的,第一个值是1,第二个值是2,以此类推。既然枚举类型是数字,那么可以直接插入数字。

      3. 枚举的优点:

        a. 运行速度快(数字比字符串运行速度快)

        b. 限制数据,保证数据完整性

        c. 节省空间

    六、集合(set)

      1. 从集合中选择一些数据(多选)

      2. 插入的顺序不一样,但显示的顺序是一样的

      3. 插入集合中没有的选项会报错

      4. 每个集合的元素都分配一个固定的值,分配的方式从左往右按2的0、1、2 ...次方

      5. 如果是多选,它们的关系是按位或

    七、日期类型

      1. 类型

        datetime      日期时间,占用8个字节

        date        日期,占用3个字节

        time        时间,占用3个字节

        timestamp      时间戳,占用4个字节

        year        年份,占用一个字节

      2. datetime格式:年 - 月 - 日 小时:分钟:秒

    八、boolean类型

      1. mysql不支持bool类型,true和false在数据库中对应1和0

  • 相关阅读:
    【Java TCP/IP Socket】应用程序协议中消息的成帧与解析(含代码)
    【Java TCP/IP Socket】UDP Socket(含代码)
    【Java TCP/IP Socket】TCP Socket(含代码)
    Java NIO —— Buffer(缓冲区)
    java.nio.ByteBuffer 以及flip,clear及rewind区别
    Java文件IO操作应该抛弃File拥抱Paths和Files
    Java网络编程之InetAddress和URL
    Java enum的用法详解
    PAT Basic 1083 是否存在相等的差 (20 分)
    PAT Basic 1082 射击比赛 (20 分)
  • 原文地址:https://www.cnblogs.com/DjanFey/p/10672083.html
Copyright © 2011-2022 走看看