首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >mysql数据类型(详解)

mysql数据类型(详解)

作者头像
数据分析与统计学之美
发布2021-11-25 09:43:45
发布2021-11-25 09:43:45
4490
举报

1、字符串类型

1)char(m):定长的字符串。
2)varchar(m):不定长的字符串。

上述知识,可以参考下图理解:

3)char和varchar存储的空间利用率比较。

从上表中可以看出:

4)tinytext、text、longtext

注意:只要存放的是字符串类型,都要注意编码问题,一般使用的是utf8编码。

2、数值类型

有符号位与无符号位详解网址:https://www.cnblogs.com/123ing/p/4135229.html

2.1、整型数据类型,声明时的参数问题

1)unsigned参数。
代码语言:javascript
复制
-- 创建表
create table person(
    pname varchar(20),
    page tinyint unsigned,
    psex bit(1)
) charset=utf8;

-- 插入两条记录
insert into person(pname,page,psex)
values("张三",18,0),("李四",22,0);

观察下图:

从上图可以看出:

2)zerofill参数必须和M参数配合使用"才有意义"。
代码语言:javascript
复制
-- 对学号字段进行一个说明:
-- 1:学号不能为负;
-- 2:学号一般位数相同,即使不同,也会用0填充。
-- eg:00001,00013,00128,01280。
-- 创建表
create table student(
    sid smallint(5) zerofill not null default 0,
    sname varchar(20),
    sage tinyint unsigned,
    ssex bit(1) default 0
) charset=utf8;

-- 插入两条记录
insert into student(sname,sid)
values ("张飞",5),("吕布",1);

观察下图:

从上图可以看出:

3、小数类型(浮点数和定点数类型)

举例说明:

代码语言:javascript
复制
-- swage代表工资;sbonus代表津贴,津贴不能是负数。
-- 创建表
create table salary(
    sname varchar(20),
    swage float(6,2),
    sbonus float(5,2) unsigned not null default 0
) charset=utf8;

-- 插入两条记录
insert into salary(sname,swage,sbonus)
values ("纪晓岚",9999.99,111.11),("和珅",-9999.99,444.44);

观察下图:

从上图中可以看出:

3.1、float/double和decimal精度比较

代码语言:javascript
复制
-- 创建表
create table bank(
    id varchar(20),
    acc1 float(9,2),
    acc2 decimal(9,2)
) charset=utf8;

-- 插入两条记录
insert into bank(id,acc1,acc2)
values
(1,1234567.45,1234567.45),
(2,1234567.678,1234567.678);

观察下表:

从上表中可以看出:

4、日期/时间类型

1)什么是日期类型和时间类型?
  • 日期类型:2019-11-16(2019年11月16号)
  • 时间类型:10:45:30(10点45分30秒)
2)日期/时间类型
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/12/13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、字符串类型
    • 1)char(m):定长的字符串。
    • 2)varchar(m):不定长的字符串。
    • 3)char和varchar存储的空间利用率比较。
    • 4)tinytext、text、longtext
  • 2、数值类型
  • 2.1、整型数据类型,声明时的参数问题
    • 1)unsigned参数。
    • 2)zerofill参数必须和M参数配合使用"才有意义"。
  • 3、小数类型(浮点数和定点数类型)
  • 3.1、float/double和decimal精度比较
  • 4、日期/时间类型
    • 1)什么是日期类型和时间类型?
    • 2)日期/时间类型
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档