Mysql数据类型,整型,浮点型,字符类型,char和varchar的特点

Mysql数据类型,整型,浮点型,字符类型,char和varchar的特点

数据类型

  1、数值类型

    1、整型

      1、int 大整型(4个字节)

        取值范围 :2**32 - 1(42亿多)

      2、tinyint 微小整型(1个字节)

        1、有符号(signed默认) : -128 ~ 127

        2、无符号(unsigned) : 0 ~ 255

          age tinyint unsigned,

      3、smallint 小整型(2个字节)

      4、bigint 极大整型(8个字节)

    2、浮点型

      1、float(4个字节,最多显示7个有效位)

        1、用法

  字段名 float(m,n)  m->总位数 n->小数位位数

  float(5,2)取值范围? -999.99 ~ 999.99

      2、decimal(最多显示28个有效位)

        1、decimal(m,n)

2、存储空间(整数、小数分开存储)

  规则:将9的倍数包装成4个字节

          

  余数    字节

    0       0

   1-2      1

   3-4      2

   5-6      3

   7-9      4

示例:decimal(19,9)

  整数部分:10/9=商1余1 4字节+1字节=5字节

  小数部分:9/9=商1余0 4字节+0字节=4字节

  占:9字节

    3、练习

      1、创建库 studb2 ,并在库中创建表 stuinfo,要求:

        id :大整型

name :字符类型,宽度为15

age :微小整型,不能为负数

height :浮点型,小数位为2位(float)

money :浮点型,小数位为2位(decimal)

        

        create table stuinfo(

id int,

name char(15),

age tinyint unsigned,

        height float(5,2),

money decimal(20,2)

);

      2、查看stuinfo的表结构

      3、查看stuinfo的默认字符集

      4、在表中插入1条完整记录

        desc stuinfo;

insert into stuinfo values (1,"Bob",23,176,88888.88);

      5、查询所有表记录

        select * from stuinfo;

      6、在表中id 、name两个字段插入2条记录

        insert into stuinfo(id,name) values

(2,"Jim"),(3,"Tom");

      7、查询所有学生的id和姓名

        select id,name from stuinfo;

  2、字符类型

    1、char(定长)

      1、取值范围:1~255

    2、varchar(变长)

      1、取值范围:1~65535

    3、text / longtext(4G) / blob / longblob(4G)

  3、char和varchar的特点

    1、char :浪费存储空间,性能高

    2、varchar :节省存储空间,性能低


最后编辑于:2020/10/13作者: 牛逼PHP

发表评论