MySQL--基础篇

这里写目录标题

  • 总览
    • MySQl各个阶段
    • 基础篇总览
  • MySQL概述
    • 数据库相关概念
    • 查看本机MySQL版本号
    • 启停mysql
      • 打开windows服务管理
      • windows命令行启停
    • 连接mysql客户端
    • mysql运行逻辑
      • 数据模型
      • 关系型数据库
    • 总结
  • SQL
    • 总览
    • SQL通用语法
    • SQL语句分类
    • DDL
      • 数据库操作
      • 表操作
        • 查询表
        • 创建表结构
        • 数据类型
          • 数值类型
          • 字符串类型
          • 日期类型
          • 案例
        • 对表:修改&删除
          • 表修改
          • 表删除

总览

MySQl各个阶段

MySQL--基础篇_第1张图片

基础篇总览

MySQL--基础篇_第2张图片

MySQL概述

数据库相关概念

MySQL--基础篇_第3张图片
数据库是数据的仓库,存储数据
数据库管理系统,是一个大型软件,他操作着数据库,是人与数据库沟通的桥梁
SQL,是数据库编程语言,通过他可以通过数据库管理系统操作数据库

查看本机MySQL版本号

win + r
cmd
mysql --version
(侧面可以查看本机是否安装了mysql)

启停mysql

打开windows服务管理

MySQL--基础篇_第4张图片
MySQL--基础篇_第5张图片

windows命令行启停

MySQL--基础篇_第6张图片
MySQL--基础篇_第7张图片
注意,本机MySQL注册服务就叫MySQL(通过services.msc就可以看到)

连接mysql客户端

MySQL--基础篇_第8张图片
MySQL--基础篇_第9张图片
配置好环境变量之后,cmd以管理员身份运行,输入
mysql -u -root -p
(-h -p选项可以不写,默认是127.0.0.1 3306,即本机IP的3306端口)
之后输入密码
即可进入到mysql客户端,通过这个窗口输入sql语句,就可以操作mysql数据库了

mysql运行逻辑

数据模型

MySQL--基础篇_第10张图片
客户端就是我们的sql语句输入窗口,
而当我们安装了mysql之后,我们的计算机就变成了mysql数据库服务器
mysql整个服务自带dbms(即数据库管理系统),他可以翻译sql语句,去操作数据库中的数据

在一个数据库服务器中,可以创建多个数据库,而一个数据库又可以创建多个表

关系型数据库

MySQL--基础篇_第11张图片
即多张二维表,且,二维表之间有关系

总结

MySQL--基础篇_第12张图片

SQL

总览

MySQL--基础篇_第13张图片

SQL通用语法

MySQL--基础篇_第14张图片
可以多行可以单行
SQL语句可以使用空格/缩进来增强语句可读性
不区分大小写
注释:–单行注释
/* */ 多行注释

SQL语句分类

MySQL--基础篇_第15张图片
DDL针对数据库,用来制作数据库、删除数据库,制作表的字段
DML针对数据库表中的数据,用来操作数据库表中的数据,进行增删改
DQL针对数据库表中的数据,查询数据库中表的数据
DCL针对数据库的控制,创建数据库用户、控制数据库访问权限

DDL

数据库操作

MySQL--基础篇_第16张图片
几个注意点:
查询:
1、查询所有数据库时,要加database要加s
创建:
2、创建数据库时,database不用加s 且有几个可选项,第一个可选项是if not exists 加上之后的意思是:如果这个数据库名不存在,我再创建这个数据库,如果名称被占用,那么不会再创建,如下是加选项的语句:
在这里插入图片描述
3、使用字符集时,如果想要使用utf8,那么可以使用utf8mb4,因为默认的utf8是3字节,utf8mb4是四字节(同时这也是默认的字符集),存储的数据范围要更大一些
在这里插入图片描述
删除:
4、关于删除,可以加上选项if exists 表示如果存在再进行删除
使用:
5、使用数据库,我们有许多的数据库,我们要进入一个数据库里,进行相关数据的操作,进入数据库就使用use语句
6、当我们进入了数据库,执行了许多sql语句,我们突然忘了当前在哪个数据库了,想要查询当前在哪个数据库,就可以使用查询数据库:select database();,如下图:
MySQL--基础篇_第17张图片

切换数据库:
7、同时如果现在在一个数据库内,可以直接使用use切换到其他数据库

表操作

查询表

MySQL--基础篇_第18张图片
进入数据库之后
使用show tables; 即可查看当前所在数据库所有的表

当我们有一个表之后,可以使用desc来查询表结构
但是使用该语句获得的信息较少,可以使用show create table 表名 查询到具体的建表语句,可以查看相关注释等等,如下图:
MySQL--基础篇_第19张图片
上图中标出来的地方 可以忽略 这是默认配置

创建表结构

MySQL--基础篇_第20张图片
其中的字段1、2、3… 都是表头名称 ,后面跟上表头所引领数据的类型

中括号里都是可选内容,即加上comment 后面可以写注释
每个字段语句之间用逗号隔开,最后一个无需加逗号

如下图创建了表的表结构
MySQL--基础篇_第21张图片
需要注意的是:
1、注释要用单引号引起来
2、在sql语句中字符串用varchar表示,之后加括号,括号里是字符串的长度,varchar(50)是表示五十位的字符串,一位代表一个汉字(注意这里的位不是大小,一个汉字的大小是两个字节)

创建完表之后,可以使用上面的show tables查看所有的表
然后可以使用desc 表名,查看一个表的表结构
MySQL--基础篇_第22张图片

数据类型
数值类型

MySQL--基础篇_第23张图片
上图是数值类型的各个类型,其中有许多小整数类型。可以对于一些范围不大的业务,可以适当选取小整数,节省空间

如下案例:
MySQL--基础篇_第24张图片
对于年龄age:一个人的年龄绝对在(0,255)范围内,所以可以使用tinyint类型,同时在后面标注无符号类型unsigned(不加unsigned默认有符号位)
对于分数score:一般是0到100,小数一位,那么double(参数一,参数二) ,参数一:算上小数位最多有几位数字,参数二:小数位占其中的几位

字符串类型

MySQL--基础篇_第25张图片
一般只有char 和 varchar 常用
第一个char 是定长字符串 他的空间一旦被规定就不再改变,因此性能较高
varchar 是变长字符串 他的空间只是规定上限,他会根据具体的内容进行空间匹配,是变长的,因此性能较低

而对于char 和varchar 都有一个参数 表示该字符串的长度
对于用户名,使用varchar合适
对于性别,使用char(1)合适

日期类型

MySQL--基础篇_第26张图片
其中标出来的三个较为常用

DATE YYYY-MM-DD 表示年月日,表示一个日期
TIME HH:MM:SS 时间值或计时 小时:分钟:秒
DATETIME YYYY-MM-DD HH:MM:SS 年月日时分秒

案例

MySQL--基础篇_第27张图片
MySQL--基础篇_第28张图片
注意 字节中的位数不区分汉字还是数字或者字母,只看字符数

对表:修改&删除
表修改

添加字段:
MySQL--基础篇_第29张图片
修改一个字段的数据类型:
以及修改字段名和字段的数据类型:
MySQL--基础篇_第30张图片
修改一个表的表名:
MySQL--基础篇_第31张图片

表删除

表的字段的删除:
MySQL--基础篇_第32张图片

删除一张表:
以及 删除表后重新创建该表:
MySQL--基础篇_第33张图片
对于删除表后重新创建表的功能:删除表后,表中的数据会被清空,然后重新创建表的话,数据不再了,但是表的结构还在的,相当于数据重置了

你可能感兴趣的:(mysql,数据库)