MySql数据类型教程示例详解

吾爱主题 阅读:103 2024-04-02 08:06:49 评论:0
目录
  • 1.简要概述
  • 2. mysql数据类型详解
    • 1) 字符串类型
    • 2) 整数类型
    • 3)浮点数类型
    • 4)日期/时间类型

1.简要概述

为什么要开通mysql这个学习板块呢?因为这是一名数据分析师必要的一项技能。分析数据什么最重要?当然是数据,既然如此!在数据呈现爆发式增长的年代,怎么能够不学学数据库呢?其实这也是很多读者朋友希望看到的,也是他们建议我写的。

难者不会,会者不难!其实网上很多mysql的总结文章,不可否认,知识点写的都很全,但是呢!这个只是会使用mysql数据库的朋友的一个查询手册,不会使用的还是不会使用呀(并没有详细的介绍)。于是我就开始了我这个板块的写作,希望能够帮助那些转行的,要学习mysql的朋友们。当然还要补充一点,这些板块并不是针对那些搞开发的、想当dba的朋友,而是针对那些转行数据分析,然后需要学习mysql数据库的那些朋友们。

前面我们已经带着大家怎么安装了mysql数据库了,我也相信我写的这个安装教程应该是全网最详细的一个教程,不信你看。            

《mysql安装教程》

当然,如果你此时正在为mysql的二次安装(第一次安装失败)感到苦恼,那么这个mysql的卸载文章应该对你会有很大作用。             

《mysql卸载教程》

虽然我们不当dba,但是适当了解一些mysql增删改查以外的知识,也是有必要的,比如说建表语句为什么加上这个charset=utf8?我们从输入sql语句到服务器给我们返回数据,究竟经历了一个怎么样的历程?你就可以实当看看下面这篇文章。

《你真的搞明白了charset=utf8编码问题吗?》

2. mysql数据类型详解

学过编程语言的人都知道,怎么学习一门编程语言呢?首先要从数据类型开始学起。虽然库是别人创建的,表是别人设计的,这些好像都与你无关,但是掌握这样一个知识点,对你更好的理解和学习mysql,肯定是会有帮助的。

1) 字符串类型

① char(m):定长的字符串。

② varchar(m):不定长的字符串。

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

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

从上表可以看出:

④ tinytext、text、longtext

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

2) 整数类型

符号位与无符号位详解网址:

① 整型数据类型声明时的参数问题

② unsigned参数。

?
1 2 3 4 5 6 7 8 9 10 11 12 13 -- 创建表 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);

观察下图:

从上图可以看出:

③ zerofill参数必须和m参数配合使用"才有意义"。

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -- 对学号字段进行一个说明: -- 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)浮点数类型

举例说明:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 -- 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);

观察下图:

从上图中可以看出:

① float/double和decimal精度比较

?
1 2 3 4 5 6 7 8 9 10 11 12 -- 创建表 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号)

2)时间类型:指的是时、分、秒,类似于10:45:30(10点45分30秒)

② 日期/时间类型

以上就是mysql数据类型教程示例详解的详细内容,更多关于mysql数据类型的资料请关注服务器之家其它相关文章!

原文链接:https://blog.csdn.net/weixin_41261833/article/details/106742277

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容