MySQL数据类型

MySQL表的数据类型
数值类型
  1. 整型
  • tinyint、samllint、mediumint、int、bigint
  • 无符号添加unsigned。e.g.: int unsigned
  • tinyint: 1字节
  • int: 4字节
  • 显示宽度:int(5) 数据显示宽度为5
  • 添加前导零:zerofill。 e.g.: int(5) zerofill
  1. 浮点型
  • float、double
  • float: 4字节
  • double:8字节
  • float(5,2) 5位长度,2位小数, 2位整数
  • double(4,1) 4位长度,1位小数,3位整数
  • 小数超出,会四舍五入。整数位超出会报错。e.g.: 1.235会变成1.24,在float(5,2)
  • 浮点数存在精度丢失
  1. 定点数
  • decimal整数和小数分开存储
  • decimal(总位数,小数位)
  • 不会存在精度丢失问题,可以存无限大的数
字符、文本
  1. 字符型
  • char(字符数)、varchar(字符数)
  • char定长,最大255字节,不回收多余字节。根据不同的编码得到不同的最大字符数。
  • varchar变长,最大65535字节,回收多余字节。根据不同的编码得到不同的最大字符数。
  • 创建一张表,一条记录的总长度不允许超过65535字节。
  1. 大段文本
  • tinytext、text、mediumtext、longtext
  • text类型使用的是地址值
枚举、集合
  1. 枚举类型
  • enum使用数字保存在数据库中
  • e.g.:enum('男','女','未知')
  • 插入:insert into t0 values(1);
  • 插入:insert into t0 values('男');
  • 优点:运行速度快
  • 优点:限制插入数据,保证数据完整性
  • 优点:节省空间
  1. 集合类型
  • set无序
  • 用法: create table t1(habit set('骑车','开车','开飞机'));
  • 枚举的技术从2^0开始,每个列举较前一个乘以2
  • 优点:运行速度快
  • 优点:限制插入数据,保证数据完整性
  • 优点:节省空间
日期、Boolean
  1. 日期类型
  • datatime
  • 用法:create table t2(time datetime);
  • 插入:insert into t2 values('2019-4-12 11:57:32');
  • date
  • 用法:create table t3(t date);
  • 插入:insert into t3 values('2019-4-12');
  • timestamp
  • 从1970年1月1日0点起计
  • 用法:create table t4(t timestamp);
  • 插入:insert into t4 values('2019-4-12 11:57:32');
  • time
  • 时分秒,时可以超过24小时,表示天的间隔
  • 用法:create table t5(t time);
  • 插入:insert into t5 values('11:57:32');
  1. Boolean类型
  • 不支持,可使用0和1表示
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值