数据分析课程笔记 - 12 - MySQL(一)

大家好呀,又跳票了,我已经没脸再找借口了,所以就不解释了哈哈。

直接进入正题。Pandas 学完,Python 的学习就暂时告一段落了。从这节课开始,我们正式进入数据分析的另一利器——MySQL 的学习。

Mysql 的安装在这个课程刚开始的环境安装部分已经讲过了,这里就不再赘述了,没有安装好的童鞋,可以再复习一下之前的内容——环境安装

这里我们需要再安装一个数据库管理工具——Navicat。这个软件是收费的,不过有 14 天的试用期,足够大家把 Mysql 学完了。

安装好之后,我们就可以开始 Mysql 的学习了。

以下是这节课的主要内容:

1、认识数据库
(1)对比Excel来认识数据库
(2)数据库的构成
(3)市面上主流的数据库管理系统
(4)SQL语言简介
2、MySQL的基本操作
(1)连接到MySQL
(2)MySQL的常用指令
(3)数据库的操作
(4)创建表
3、常用的数据类型
(1)数值型
(2)日期时间型
(3)字符型
(4)其他
4、Navicat 管理工具
(1)连接MySQL:在Navicat中新建⼀个连接
(2)Navicat基本操作
(3)数据库的备份与恢复

一、认识数据库

1、对比Excel来认识数据库

对于之前没接触过数据库的同学来说,这可能是一个比较陌生的概念,但是 Excel 相信大家都很熟悉,我们可以用 Excel 来帮助自己理解数据库。

一个 Excel 文件可以有多张工作表(Sheet),一张工作表中有很多行和列。

相对应的,一个数据库(Database)也可以有多张数据表(Table),一张数据表中也有很多行(Rows)和列(Columns)。

不过不同的是,Excel 最多只能存放 104 万行、1024 列数据,而 MySQL 每个数据库最多可以创建20亿张表,所以 MySQL 通常被企业用来存放规模较大的数据。当然了,MySQL 虽然对每个表中行的数量没有直接限制,但它会受到数据库存储空间的限制。

2、数据库的构成

从上面的对比我们可以看出,数据库由数据表、行和列组成。MySQL 可以存放多个数据库实例,一个数据库实例可以存放多张数据表,一张数据表可以存放多条数据。

数据库和数据表
行和列

3、市面上主流的数据库管理系统

目前,市面上有很多数据库管理系统,,Mysql 由于其开源性和强大的功能,是应用最为广泛的数据库之一,其排名仅次于商用数据库 Oracle。

各种数据库管理系统

4、SQL语言简介

SQL(Structured Query Language),即结构化的查询语言,它是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

数据分析师最常用的就是:数据查询语言(DQL)、数据操作语言
(DML)、数据定义语言(DDL),也就是众所周知的——增删改查。

二、MySQL 的基本操作

1、连接到MySQL

首先要确保 MySQL 服务正常启动,处于正在运行的状态。(可以百度一下如何启动和关闭 Mysql 服务,就知道怎么查看 Mysql 服务是否正在运行了。)

然后以命令行的方式连接到MySQL:

mysql -u root -p

之后输入密码即可,也可以在 -p 后直接输入密码。

(2)MySQL的常用指令

  1. 查看所有的数据库:show databases;
  2. 使用/进入数据库:use 数据库名;
  3. 查看创建的数据库:show create database 库名;
  4. 查看数据表结构:describe/desc 表名;
  5. 查看数据表详细结构:show create table 表名;

注意:Mysql 命令结束必须要加分号 ; (英文分号)!并且命令一般默认用大写,数据库名、表名、字段名等默认用小写。

(3)数据库的操作

语法结构:

CREATE DATABASE 数据库名;
# 或者在工具中创建

例如:创建名为 xuexii 的数据库:

CREATE DATABASE xuexii

查看创建的数据库信息:

SHOW CREATE DATABASE xuexii;

删除数据库(谨慎操作,谢绝删库跑路!):

DROP DATABASE xuexii;

(4)创建表

语法结构

CREATE TABLE 表名 -- 创建的表名不区分大小写,但不能使⽤关键字,如DROP、ALTER等
(
    字段1 数据类型  [列级别约束条件] [默认值],
    字段2 数据类型  [列级别约束条件] [默认值],
    .......,
    [表级别约束条件]
)[ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='关于表的注释'];

注:
ENGINE=InnoDB   -- 引擎类型(事务处理引擎)
AUTO_INCREMENT=1    -- 每增加⼀行时自动增量
CHARSET=utf8mb4 -- 编码格式

这样看可能不够直观,我们来看一个例子:

-- 主键约束
create table tb_emp1(
    id INT PRIMARY  KEY,
    name VARCHAR(20),
    deptId INT,
    salary FLOAT
);

注 :PRIMARY  KEY:表示主键约束,限制了该列的值都是唯⼀且非空的。

-- 唯⼀性约束
create table tb_dept1(
    id INT PRIMARY  KEY,
    name VARCHAR(22)  UNIQUE,
    location VARCHAR(50) 
);

说明:唯⼀性约束要求该列的值都是唯⼀的,允许为空,但只能出现⼀个空值。因此唯⼀性约束的功能是确保⼀列或者几列不出现重复值。⼀个表中可以有多个UNIQUE字段,但只能有⼀个PRIMARY KEY声明,声明为主键的列不允许有空值,而唯⼀性约束的列可以 且只有⼀个空值。

-- 默认约束:用来指定某列的默认值

create table tb_emp2(
    id INT PRIMARY  KEY,
    name VARCHAR(25) not null,
    deptId INT default 1000,
    salary float  
);

说明:如果在插⼊数据时没有指定部⻔编号,则默认都为1000。

-- 属性值⾃动增加
create table tb_emp3(
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(25) NOT NULL,
    deptId INT,
    salary FLOAT 36 
);

说明:在插⼊记录时,默认的⾃增字段id的值从1开始,每次添加
⼀条新纪录时该值⾃动加1。

INSERT INTO tb_emp3 (name,salary) 
values('Tom',2000),('Jack',10000),('Kevin',40);

select * from tb_emp3; 

扩展1:查看表基本结构
desc tb_emp3; 

扩展2:查看表详细结构语句
show create table tb_emp3;
show create table tb_emp3\G

三、常用的数据类型

注:蓝色高亮为常用数据类型

1、数值型

数值型数据

2、日期时间型

日期和时间型数据

3、字符型

字符型数据

4、其他

其他类型的数据

四、Navicat 管理工具

1、连接 MySQL:在Navicat中新建⼀个连接

连接
连接成功

2、Navicat 基本操作

(1)数据库基本操作

新建数据库
数据库设置

(2)数据表基本操作

新建数据表
数据表设置

(3)表数据基本操作

插入和删除数据
查询语句

3、数据库的备份与恢复

(1)数据库的备份

数据库备份

(2)数据库的恢复

数据库恢复
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容

  • 在正式开始学习SQL之前,让我们先来了解一下美国作家西蒙.斯涅克因在TED演讲中提出黄金圈法则,黄金圈法则的核心思...
    何书365阅读 443评论 0 1
  • MySQL 学习笔记 一、使用终端操作数据库 (一)、基本语句 1、登录数据库服务器 2、查询数据库服务器中所有的...
    shimo_chang阅读 152评论 0 0
  • 本文为我刚转行成功时的一篇复盘,对数据分析感兴趣的同学可以看一下 (文章对应资源已经上传到公众号-人人都会数据分析...
    橙子先生up阅读 1,614评论 0 19
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 7,523评论 16 22
  • 今天感恩节哎,感谢一直在我身边的亲朋好友。感恩相遇!感恩不离不弃。 中午开了第一次的党会,身份的转变要...
    迷月闪星情阅读 10,564评论 0 11