数据库通关之路 MySQL 全路线学习知识点梳理(上)

Posted 陈橘又青

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库通关之路 MySQL 全路线学习知识点梳理(上)相关的知识,希望对你有一定的参考价值。

前言

这是一篇 MySQL 通关 硬核经验学习路线,包括数据库相关知识,SQL语句的使用,数据库约束,设计等。专为小白整理,针对数据库零基础的朋友们,手把手带你学习mysql,让你轻松学会!

文末包邮送《WPS Office高效办公:数据处理与分析 》1本(点击下方目录直达),本文每+1000浏览额外加抽一人

文章目录

1. 数据库的相关概念

1.1 数据

数据是指数据库中存储的基本对象,是描述事物的符号记录。

1.2 数据库

数据库是指存放数据的仓库,长期存放在计算机内的有组织可共享的数据集合。

数据库技术解决了数据的持久化存储问题,同时利用数据库管理系统解决了对大量数据操作繁琐的问题。

1.3 数据库管理系统

数据库管理系统是指位于用户和操作系统之间的一层数据管理软件,科学的组织和存储,高效的获取和维护。

我们所说的 MySQL 数据库就是指 MySQL 数据库管理系统,在大家日常的使用习惯中把他叫做 MySQL 数据库。在我们的电脑安装好数据库管理系统软件以后就可以创建数据库来管理数据,同时也可以对数据库中的数据进行增删改查的操作。

1.4 数据库系统

数据库,数据库管理系统,应用程序和数据库管理员共同组成了数据库系统

1.5 SQL

SQL的英文是 Structured Query Language,简称 SQL,是一种操作关系型数据库的结构化查询语言,我们在操作数据库时经常用到的操作就是查询操作。

SQL定义了操作所有关系型数据库的统一标准,可以使用 SQL 操作所有的关系型数据库管理系统,在使用其他的数据库管理系统时,也同样可以使用 SQL 来操作。

2. MySQL数据库

2.1 MySQL安装

MySQL有很多的安装方式,这里可以使用绿色版,避免了安装版的一些繁琐的操作,直接在官网下载与自己电脑相对应的版本的压缩文件,然后将压缩文件解压到一个非中文的目录中。


这里选择下载的产品版本是 5.7.24 ,原因是各个库支持的最完善且相对于最新版本更加的稳定。

2.2 MySQL配置

2.2.1 添加环境变量

右键此电脑 / 属性 / 高级系统设置 / 环境变量 ,在系统变量中新建变量,命名为 MYSQL_HOME,变量值为刚才 MySQL 的存放路径。

双击系统变量中的 Path,值为 %MySQL_HOME%\\bin 。添加环境变量的方式与前面学习配置 Java 环境变量大致相同。

那么,我们为什么要先配置环境变量呢?

平时,我们在命令行窗口中输入一个可执行程序的命令时,Windows 会先在环境变量中的Path所指的路径中寻找,如果找到就直接执行,没找到就在当前工作目录中寻找,如果还没找到,就会报错。

我们添加环境变量的目的就是能够在任意路径下运行配置了环境变量的程序,而不用总是修改工作目录,大大简化了操作。

我们如何验证添加环境变量成功呢?

此时,我们只需要以管理员身份运行命令提示符工具,执行 mysql,如果提示 Can't connect to MySQL server on 'localhost',则环境变量添加成功。

注:此时必须以管理员身份运行命令提示符工具,否则会报错。

2.2.2 新建配置文件

在MySQl的根目录中创建一个配置文件 my.ini ,其内容为:

[mysql]
default-character-set=utf8

[mysqld]
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

主要目的是配置数据库的默认编码集为utf-8和默认存储引擎为INNODB

2.2.3 初始化MySQL

在命令提示符窗口中运行mysqld --initialize-insecure,如果没有出现报错,则证明data目录初始化成功。

mysqld --initialize-insecure

此时当我们再打开查看MySQL目录,已经有data目录生成。

2.2.4 注册MySQL服务

在命令提示符窗口中运行 mysqld -install,此时你的电脑就成功注册了MySQL服务,此时你的电脑就可以称为MySQL服务器。

mysqld -install

2.2.5 启动MySQL服务

在命令提示符窗口中运行net start mysql,此时,我们已经成功启动MySQL服务。

net start mysql

运行net stop mysql即可停止MySQL服务。

net stop mysql

可以通过运行mysqladmin -u root password 1234修改默认账户密码,这里的1234指默认管理员(即root账户)的密码。

mysqladmin -u root password 1234

2.3 MySQL登录和退出

在命令行中运行mysql -uroot -p,按照提示输入密码 ,即登录成功。

mysql -uroot -p密码

登录命令中的参数:

mysql -u用户名 -p密码 -h要连接的mysql服务器的ip地址(默认127.0.0.1) -P端口号(默认3306)

退出MySQL时:

exit
quit

2.4 MySQL卸载

我们只需要简单的三步就可以完成MySQL的卸载:

第一步:运行net stop mysql

net stop mysql

第二步:运行mysqld -remove mysql

mysqld -remove mysql

第三步:删除MySQL目录及相关的环境变量。

2.5 MySQL数据模型

MySQl 是一个关系型数据库。关系型数据库是建立在关系模型基础上的数据库,简单来说,关系型数据库是由多张能互相连接的二维表组成的数据库。

与关系型数据库对应的是非关系型数据库,关系型数据库有很多的优点,例如,都是使用表结构,格式一致,易于维护。使用通用的 SQL 语言操作,方便快捷,可用于复杂查询等。

我们通过客户端可以用数据库管理系统创建数据库,在数据库中创建表,在表中添加数据。创建的每一个数据库对应到磁盘上都是一个文件夹,而一个数据库下可以创建多张表,文件夹中的 .frm 就是表文件,.MYD是数据文件,通过这两个文件就可以查询到数据展示成二维表的效果。

3. SQL语句

3.1 SQL简介

SQL被称为结构化查询语言,可以用于对所有的关系型数据库进行操作,即我们可以通过SQL语句对数据库、表、数据进行增删改查操作。

SQL定义了操作关系型数据库的统一标准,但是,对于同一个需求,每一种数据库操作的方式可能会存在一些不一样的地方。

3.2 通用语法

MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。

SQL 语句可以单行或多行书写,以分号结尾。

注释:

  1. 单行注释: – 注释内容 或 #注释内容(MySQL 特有)

  2. 多行注释: /* 注释 */

3.3 SQL分类

DDL: 数据定义语言,用来定义数据库对象:数据库,表,列等

DML: 数据操作语言,用来对数据库中表的数据进行增删改

DQL:数据查询语言,用来查询数据库中表的记录(数据)

DCL:数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户

数据是数据库中非常重要的部分,所以在日后的操作中我们最常进行的是对数据的一些操作,即对数据进行怎删改查,所以最常用操作的是 DMLDQL

总的来说DML用于对数据增删改,DQL用于对数据查询操作,DDL用于操作数据库,而DCL是用来控制权限。 SQL 的基本操作一般是指对数据库,数据表,数据的增删改查。

4. DDL- 操作数据库

首先要学习的是使用DDL来对数据库进行操作,主要是对数据库的增删改查操作。

4.1 查询

查询所有的数据库:

show databases;

例如:

4.2 创建数据库

创建新的数据库:

create database 数据库名称;

使用上面的方式创建新的数据库时,如果该数据库已经存在,则会出现错误,所以我们在创建新的数据库时一般会判断该数据库是否存在,如果已存在,则不会创建。

创建新的数据库(判断数据库是否已经存在):

create database if not exists 数据库名称;

例如:

4.3 删除数据库

删除数据库:

drop database 数据库名称;

和前面创建新的数据库相同,为了避免出现错误,我们一般会先判断该数据库是否存在,如果不存在,则不会删除。

删除数据库(判断数据库是否已经存在):

drop database if exists 数据库名称;

例如:

4.4 使用数据库

现在我们已经成功创建了新的数据库,接下来,我们要在数据库中创建数据表,首先我们要明白是对哪一个数据库进行操作,此时我们要先学会使用数据库,才能对数据库中的表进行操作。

使用数据库:

use 数据库名称;

查询当前正在使用的数据库:

select database();

例如:

5. DDL- 操作数据表

同样,对数据表的操作无非就是增删改查,在学习相关操作之前,我们先要熟悉一下MySQL的数据类型。

5.1 数据类型

MySQL支持多种数据类型,但是大致可以分为3中,分别是数值型,日期型和字符串型。下面是比较常用的几种数据类型:

数值:

数据类型解释
tinyint小整数型,占1个字节
int大整数型,占4个字节
double浮点类型

日期:

数据类型解释
date日期值,只包含年月日
datetime混合日期和时间值,包含年月日时分秒

字符串:

数据类型解释
char定长字符串
varchar变长字符串

定长字符串和变长字符串的区别:字符串是我们在数据库中经常使用的数据类型,使用变长字符串,如果字符的长度没有达到指定的长度,那么实际的长度是多少就占用几个字符,这样的做法显然是使用时间换空间,而使用定长字符串虽然有时会出现浪费空间的情况,但是一般储存性能比较高。

5.2 查询表

查询当前数据库下所有的表:

show tables;

查询表结构:

desc 表名称;

例如:

5.3 创建表

创建一个新的表:

create table 表名称(
		字段名1 数据类型,
		字段名2 数据类型,
		...
		字段名n 数据类型  #这里是不需要加上,的
);

例如:

5.4 删除表

删除表:

drop table 表名;

删除表(判断表是否存在):

drop table if exists 表名;

例如:

5.5 修改表

修改表名:

alter table 表名 rename to 新的表名;

增加一列:

alter table 表名 add 列名 数据类型;

修改数据类型:

alter table 表名 modify 列名 新数据类型;

修改列名和数据类型:

alter table 表名 change 列名 新列名 新数据类型;

删除列:

alter table 表名 drop 列名;

例如:


【免费赠书】


【!参与方式!】

点赞+收藏+任意评论本文
截止日期:2023-04-11 早上9:00

注:抽奖方式为<脚本随机抽取>,会在我的主页动态如期公布中奖者,包邮到家。


【内容简介↓】

本书以WPS Office办公软件为操作平台,系统、全面地讲解了在日常工作中使用WPS表格分析数据的方法和技巧等知识,并分享了数据处理的思路和经验。
全书共10章,通过真实案例介绍了什么是数据分析,以及录入数据、整理数据、公式计算、函数计算、排序和筛选、图表分析、数据透视表/透视图分析、数据工具分析,最后通过行业案例,将数据分析知识融会贯通,应用于实际工作当中,帮助读者迅速掌握多项数据分析的实战技能。
本书内容循序渐进,章节安排合理,案例丰富翔实,既适合零基础又想快速掌握WPS表格的读者学习,也可以作为期望提高WPS Office操作技能水平、积累和丰富实操经验的文秘与行政从业人员的参考书,还可以作为各大、中专职业院校及计算机培训班相关专业的教学参考用书。
京东自营购买链接:《WPS Office高效办公:数据处理与分析 金山官方认证技能》
北京大学出版社,4月“423世界读书日”促销活动(满100减50)安排来啦👇
| 当当活动日期:4.6-4.11,4.18-4.23 |
| 京东活动日期: 4.6 一天, 4.17-4.23 |
| 希望大家关注参与423读书日北大社促销活动 |


WEB前端进阶之路 HTML 全路线学习知识点梳理(下)

前言

本文是HTML零基础小白学习系列的第三篇文章,点此阅读 上一篇文章

文章目录

十五.HTML布局

布局用于改善网站的外观,我们可以使用<div>或者<table>添加网页布局,大多数网站可以使用 <div> 或者 <table> 元素来创建多列。CSS 用于对元素进行定位,或者为页面创建背景以及色彩丰富的外观。

1.使用div元素添加网页布局

div 元素是用于分组 HTML 元素的块级元素。例如:

<!DOCTYPE html>
<html>

<head> 
    <meta charset="utf-8"> 
    <title>小橙子前端教程!</title> 
</head>

<body>

    <div id="container" style="width:600px">

        <div id="header" style="background-color:cornflowerblue;">
            <h1 style="margin-bottom:0;">--唐诗三百首--</h1>
        </div>
        <!--下外边距-->
        <!--float:该属性控制目标HTML元素是否浮动以及如何浮动.-->
        <div id="menu" style="background-color:dimgrey;height:200px;width:200px;float:left;">
            <b>菜单</b><br>
            望庐山瀑布<br>
            静夜思<br>
            绝句<br>
            琵琶行
        </div>

        <div id="content" style="background-color:aliceblue;height:200px;width:400px;float:left;">
            望庐山瀑布<br>
            翻译译文:

            香炉峰在阳光的照射下生起紫色烟霞,远远望见瀑布似白色绢绸悬挂在山前。

            高崖上飞腾直落的瀑布好像有几千尺,让人恍惚以为银河从天上泻落到人间。

        </div>

        <!--clear 属性规定元素的哪一侧不允许其他浮动元素。-->
        <div id="footer" style="background-color:cadetblue;clear:both;text-align:center;">

</body>

</html>

2.使用table元素添加网页布局

我们还可以使用table标签添加网页布局,例如:

<!DOCTYPE html>
<html>

<head> 
    <meta charset="utf-8"> 
    <title>前端教程!</title> 
</head>

<body>

    <table width="600" border="0">
        <tr>
            <td colspan="2" style="background-color:cornflowerblue">
                <h1>--唐诗三百首--</h1>
            </td>
        </tr>

        <tr>
            <td style="background-color:dimgrey;width:200px;vertical-align:top;">
                <b>菜单</b><br>
                望庐山瀑布<br>
                静夜思<br>
                绝句<br>
                琵琶行
            </td>
            <!--vertical-align 属性设置元素的垂直对齐方式。-->
            <td style="background-color:aliceblue;height:200px;width:400px;vertical-align:top;">
                望庐山瀑布<br>
                翻译译文:

                香炉峰在阳光的照射下生起紫色烟霞,远远望见瀑布似白色绢绸悬挂在山前。

                高崖上飞腾直落的瀑布好像有几千尺,让人恍惚以为银河从天上泻落到人间。</td>
        </tr>

        <tr>
            <td colspan="2" style="background-color:cadetblue;text-align:center;">
                橙子!</td>
        </tr>
    </table>

</body>

</html>

<table>元素主要用于创建表格,虽然可以用于添加网页布局,但是不建议使用!


十六.HTML表单和输入

HTML 表单用于收集用户的输入信息,HTML 表单表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到 Web 服务器。

表单是一个包含表单元素的区域,表单元素是允许用户在表单中输入内容,比如:文本域(textarea)、下拉列表(select)、单选框(radio-buttons)、复选框(checkbox)等等。

我们使用标签来创建表单,多数情况下被用到的表单标签是输入标签 <input>

1.文本域

文本域(Text Fields)通过 <input type="text"> 来设定,当用户要在表单中键入字母、数字等内容时,就会用到文本域,例如:

<body>
    <form>
        First <input type="text" name="firstname"><br>
        Last <input type="text" name="lastname">
    </form>
</body>

2.密码字段

密码字段通过标签 <input type="password"> 来定义,例如:

<form>
Password: <input type="password" name="pwd">
</form>

密码字段字符不会明文显示,而是以星号 * 或圆点 . 替代。

3.单选按钮

单选按钮(Radio Buttons)通过<input type="radio">标签来定义,例如:

<form action="">
        <input type="radio" name="sex" value="male"><br>
        <input type="radio" name="sex" value="female"></form>

4.复选框

复选框(Checkboxes)通过标签<input type="checkbox">来定义,例如:

    <form>
        <input type="checkbox" name="vehicle" value="Bike">语文<br>
        <input type="checkbox" name="vehicle" value="Car">数学<br>
        <input type="checkbox" name="vehicle" value="Bike">英语<br>
        <input type="checkbox" name="vehicle" value="Car">历史
    </form>

5.提交按钮

提交按钮用<input type="submit">标签来定义,例如:

<form name="input" action="html_form_action.php" method="get">
        Username: <input type="text" name="user">
        <input type="submit" value="Submit">
    </form>


在上面的文本框内键入几个字母,然后点击确认按钮,那么输入数据会传送到 html_form_action.php 文件,该页面将显示出输入的结果。

method 属性用于定义表单数据的提交方式,可以是以下值:

post:指的是 HTTP POST 方法,表单数据会包含在表单体内然后发送给服务器,用于提交敏感数据,如用户名与密码等。

get:默认值,指的是 HTTP GET 方法,表单数据会附加在 action 属性的 URL 中,并以 ?作为分隔符,一般用于不敏感信息,如分页等。


十七.HTML框架

有时候我们希望在同一个浏览器界面中显示不止一个页面,这时候就要用到框架。

1.iframe语法

iframe语法格式如下:

<iframe src="URL"></iframe>

2.iframe设置高度和宽度

heightwidth 属性用来定义iframe标签的高度与宽度,例如:

<iframe loading="lazy" src="demo_iframe.htm" width="200" height="200"></iframe>

3.iframe去除边框

frameborder 属性用于定义iframe表示是否显示边框,例如:

<iframe src="demo_iframe.htm" frameborder="0"></iframe>

4.使用 iframe 来显示目标链接页面

iframe 可以显示一个目标链接的页面,例如:

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>前端教程!</title>
</head>

<body>

    <iframe src="demo_iframe.htm" name="iframe_a" width="800" height="400"></iframe>
    <p><a href="https://blog.csdn.net/m0_63947499?spm=1010.2135.3001.5343" target="iframe_a">陈橘又青的博客</a></p>

    <p><b>注意:</b> 因为 a 标签的 target 属性是名为 iframe_a 的 iframe 框架,所以在点击链接时页面会显示在 iframe框架中。</p>

</body>

</html>

十八.HTML颜色

HTML 颜色由红色、绿色、蓝色混合而成。

HTML 颜色由一个十六进制符号来定义,这个符号由红色、绿色和蓝色的值组成(RGB)。

每种颜色的最小值是0(十六进制:#00)。最大值是255(十六进制:#FF)。

具体颜色效果可以查表。


十九.脚本

1.HTML的 script 标签

<script> 标签用于定义客户端脚本,比如 JavaScript。<script> 元素既可包含脚本语句,也可通过 src 属性指向外部脚本文件,例如:

<script>
document.write("Hello World!");
</script>

2.HTML的 noscript 标签

标签提供无法使用脚本时的替代内容,比方在浏览器禁用脚本时,<noscript>元素可包含普通 HTML 页面的 body 元素中能够找到的所有元素,在浏览器禁止使用脚本时,会显示该标签内的内容,例如:

<script>
document.write("Hello World!")
</script>
<noscript>抱歉,你的浏览器不支持 JavaScript!</noscript>

二十.字符实体

HTML中预留的字符和一些键盘上找不到的字符必须使用字符实体来替换!

如果希望正确地显示预留字符,我们必须在 HTML 源代码中使用字符实体(character entities)。

显示结果描述实体名称实体编号
空格&nbsp;&#160;
<小于号&lt;&#60;
>大于号&gt;&#62;
&和号&amp;&#38;

实体名称对大小写敏感,实际实体名称使用时参考HTML实体参考手册!


二十一.URL

URL(统一资源定位器)是一个网页地址。

可以使用网址,例如:www.baidu.com或者使用IP地址来访问。

Web浏览器通过URL从Web服务器请求页面。

1.常见的 URL Scheme

Scheme访问作用
http超文本传输协议以 http:// 开头的普通网页。不加密。
https安全超文本传输协议安全网页,加密所有信息交换。
ftp文件传输协议用于将文件下载或上传至网站。
file您计算机上的文件。

URL 只能使用 ASCII 字符集。

总结

至此,我们完成了 HTML 学习的全部内容

学习前端很难,主要原因是这个领域发展迅速,很容易让人迷失在各种各样的框架、库和开发工具中。想要成长为前端开发人员,你必须专注于基本要素。希望我的知识分享对你有所帮助,如果你还有什么要补充的话,欢迎私信留言。

最后,再次感谢 @橙子_ 在HTML的学习以及本文编写过程中对我的帮助。


以上是关于数据库通关之路 MySQL 全路线学习知识点梳理(上)的主要内容,如果未能解决你的问题,请参考以下文章

WEB前端进阶之路 HTML 全路线学习知识点梳理(中)

WEB前端进阶之路 HTML 全路线学习知识点梳理(上)

Java后端学习路线6大维度详细总结(编程基础+开发工具+应用框架+运维知识+成神之路+平稳降落)可作为知识点梳理列表点击可查看高清原图

java内存泄漏定位和解决,学习路线+知识点梳理

2021年最全MySQL学习之路——从入门到进阶史上最全的学习路线

架构之路—java开发必学知识点详细梳理