【MySQL】数据库的基本数据类型!!

  • tinyint
    带符号的范围是-128~127,不带符号的范围是0~255。如果不加unsigned,默认为带符号的。
    【MySQL】数据库的基本数据类型!!_第1张图片

  • bit(M)
    其中M为指定的位数,默认1,范围为1~64;在显示的时候是按照ASCII码的形式展示。
    【MySQL】数据库的基本数据类型!!_第2张图片
    当类型是bit(1)的时候,那么存入的值只能够是0或者1。

  • float[(m, d)][unsigned]
    m为指定显示的长度,d位小数占用的长度,占用4个字节。

       float(4,2)范围为-99.99~99.99
     - float(5,2)范围为-999.99~999.99
    
     - 当存入放入值找过定义的长度的时候会自动的四舍五入。
    

    如果使用unsigned 范围为0~max。
    【MySQL】数据库的基本数据类型!!_第3张图片

  • decimal(m,d)[unsigned]
    m表示总共占用的长度,d为小数部分占用的长度。

     - 和float的区别:两者精度不一样,decima的精度比float高。
    

    【MySQL】数据库的基本数据类型!!_第4张图片

  • char(L)定长字符串
    L为可以存储的长度,单位为字符,最大长度为255。

     - 定长字符串在初始化的时候就会自动的开辟固定长度的空间
    

    【MySQL】数据库的基本数据类型!!_第5张图片

  • varchar(L)可变长字符串
    L表示可变字符串的长度,最大为65535,最大21845个字符,L最大取值21844,通常L超过15000的时候采用text累心存储,因为超过15000的时候会影响数据库的查询效率。
    - 可变长字符串会根据存储的数据的大小开辟空间
    【MySQL】数据库的基本数据类型!!_第6张图片
  • char和varchar的区别
    - char在使用的时候回开辟固定长度的空间,但是varchar回根据存储数据的长度来自动分配空间的大小。
    - varchar在存储的时候磁盘利用率比较高,但是查询效率没有char高
    - char在存储的时候磁盘利用率低,但是数据库查询效率高
  • 日期和时间类型

     - 常用的类型
     - datetime 时间日期格式 'yyyy-mm-dd HH:ii:ss' 表示范围从1000到9999,占用八字节 
     - date:日期 'yyyy-mm-dd',占用三字节 
     - timestamp:时间戳,从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和datetime完全一致,占用四字节
    

    【MySQL】数据库的基本数据类型!!_第7张图片
    当添加时间的时候,时间戳会自动添加。

  • set和enum

     - set:可以多选
     - enum:只能单选
    

    【MySQL】数据库的基本数据类型!!_第8张图片

注:在查询set的时候不能直接使用where hobby=’游泳’,需要使用find_in_set(‘游泳’,hobby);

你可能感兴趣的:(MySQL)