【尚硅谷MySQL基础】:入门

一、为什么要学习数据库

01:课程引入

02:为什么要学习数据库

之前学习过的可以进行存储的容器:

  • 数组
  • 集合
    • 数组和集合是把数据存储到内存中,缺点:易失性:一旦断电,内存中数据就会清空;
  • 文件
    • 文件的缺点:大量文件进行存储时,难以查询;

数据库的好处:

  1. 实现数据持久化到本地;
  2. 使用完整的管理系统统一管理,可以实现结构化查询,方便管理;

二、数据库的相关概念

03:数据库的相关概念

  1. DB:数据库(DataBase)
    存储数据的容器,它保存了一系列有组织的数据。
  2. DBMS:数据库管理系统(DataBase Management System)
    又称为数据库软件或数据库产品,用于创建或管理DB。MySQL属于其中一种。
  3. SQL:结构化查询语言(Structure Query Language)
    用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的主流数据库软件通用的语言。

常见的数据库管理系统:

  • MySQL:开源、广泛使用
  • Oracle:安装贵、服务收费贵
  • DB2:适合处理海量数据
  • SqlServer:只能安装在Windows操作系统

SQL的优点:

  1. 不是某个特定数据库供应商专有的语言,几乎所有DBMS都支持SQL;
  2. 简单易学;
  3. 虽然简单,但实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。

三、数据库存储数据的特点

04:数据库存储数据的特点

  1. 将数据放到表中,表再放到库中
  2. 一个数据库中可以有多个表,每个表都有一个名字,用来标识自己。表名具有唯一性。
  3. 表具有一些特性,这些特性定义了数据在表中如何存储,类似Java中“类”的设计。
  4. 表由列组成,我们也称列为字段。所有表都是由一个或多个列组成的,每一列类似java中的”属性”
  5. 表中的数据是按行存储的,每一行类似于Java中的“对象”。

四、初始化MySQL

05:​MySQL产品的介绍

06:​MySQL产品的卸载

07:​MySQL产品的安装

08:配置文件介绍

​09:MySQL服务的启动和停止

​10:MySQL服务的登录和退出

11:配置环境变量

05 ~ 11小结请参考我之前的文章:SQL简介及MySQL8.0的安装

12:​MySQL的常见命令

查看当前所有的数据库:show databases;
在这里插入图片描述
这是mysql自带的四个数据库,其中:

  • information_schema:提供了访问数据库元数据的方式;
  • mysql:存储数据库的用户、权限设置、关键字等;
  • performance_schema:性能信息、性能参数
  • sys:MySQL5.7之后引入。这个库是通过视图的形式把information_schema 和performance_schema结合起来,查询出更加令人容易理解的数据,通过这个库可以快速的了解系统的元数据信息。

元数据是什么?

  • 元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。

MySQL8.0没有自带的test数据库了,可以自己创建一个:
创建数据库命令:create database 库名;
在这里插入图片描述


打开指定的库:use 库名;

  • use命令、exit命令加不加分号都可以,但是个人习惯还是加上分号。

查看当前库中的所有表:show tables;
在这里插入图片描述
查看其它库的所有表:show tables from 库名;
在这里插入图片描述
但是现在我们还是处在test库的位置,没有切换到mysql库中。

  • 那么怎么知道我们当前在哪个库中呢?select database();
    在这里插入图片描述

创建表:

  • 注意最后一个字段后面没有逗号。
create table 表名(
	列名 列类型,
	列名 列类型,
	···  ···
	);

在这里插入图片描述
在这里插入图片描述
查看表结构:desc 表名;
在这里插入图片描述
显示表中的所有数据:select * from 表名;
在这里插入图片描述

13:查看MySQL服务端版本

方式一:登录到MySQL服务端:select version();
在这里插入图片描述
方式二:没有登录到MySQL服务端:mysql --versionmysql -V
在这里插入图片描述

14:总结MySQL常见命令

查看所有的数据库:show databases;
打开指定的库:use 库名;
显示库中的所有表:show tables;
显示指定库中的所有表:show tables from 库名;
创建表:create table 表名(字段名 字段类型, 字段名 字段类型, ···);
查看指定表的结构:desc 表名;
显示表中的所有数据:select * from 表名;

SQL的语言分类

  • DQL(Data Query Language):数据查询语言,如:select ;
  • DML(Data Manipulate Language):数据操作语言,如:insert 、update、delete;
  • DDL(Data Define Language):数据定义语言,如:create、drop、alter;
  • TCL(Transaction Control Language):事务控制语言,如:commit、rollback。

15:MySQL语法规范介绍

  1. 不区分大小写,但建议关键字大写,表名、列名小写;
  2. 每条命令最好用分号结尾;
  3. 每条命令根据需要,可以进行缩进或换行;
  4. 注释:
    单行注释:#注释文字
    单行注释:-- 注释文字
    多行注释:/* 注释文字 */

注释主要在图形化界面中使用,在命令行窗口中较少使用。

16:图形化用户界面客户端的安装

这里安装的是SQLyog 10.0.0版本。
在这里插入图片描述

17:图形化用户界面客户端的介绍

首先点击新建,创建一个新的连接:
在这里插入图片描述
设置信息,因为是连接本地主机所以SQL主机地址写localhost,密码是安装MySQL时设置的密码,端口也是安装时设置的端口。
在这里插入图片描述
在这里插入图片描述

MySQL8.0环境下SQLyog创建新连接时出现1251错误的解决办法

问题原因:MySQL8.0以前的加密规则与MySQL8.0以后的存在差异。
解决办法:
首先登录进MySQL服务,输入:

ALTER USER 'root'@'localhost' IDENTIFIED BY '你设置的密码' PASSWORD EXPIRE NEVER; #修改加密规则

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你设置的密码'; #更新一下用户的密码

FLUSH PRIVILEGES; #刷新权限

在这里插入图片描述
这时再次进行创建新连接操作,正常运行。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值