位置: IT常识 - 正文
推荐整理分享《网络安全入门到精通》- 3.1 - 数据库 - MySQL数据库(《网络安全从入门到精通》),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:网络安全快速入门,网络安全入门资料包 百度网盘,《网络安全从入门到精通》,网络安全新手入门,网络安全入门资料包 百度网盘,网络安全新手入门,网络安全入门资料,网络安全入门资料包 百度网盘,内容如对您有帮助,希望把文章链接给更多的朋友!
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「订阅专栏」:此文章已录入专栏《网络安全入门到精通》
MySQL数据库一、环境准备1. MySQL下载及安装2. MySQL启动3. MySQL客户端连接4. MySQL基本语法二、数据库操作1. 查询2. 创建3. 使用4. 删除5. 案例三、表操作1. 查询2. 创建3. 修改4. 删除5. 数据类型6. 案例四、数据操作1. 添加2. 修改3. 删除4.查询5. 案例五、查询操作1. 条件查询 where2. 分组 group by3. 排序 order by,desc/asc4. 条件 having5. 分页查询 limit6. 特殊查询7. 联合查询8. 子链接查询9. 案例六、常用函数1. 信息收集类2. 注入相关MySQL是中型关系型数据库,使用表来存储数据,利用表和表之间的关系来存储数据和数据之间的关系
一、环境准备1. MySQL下载及安装MySQL 8.0社区版下载及安装教程
2. MySQL启动使用MySQL前,必须启动MySQL的服务。
cmd启动mysql服务:
net start mysql80下列两种情况,表示服务启动:
注意:mysql80是默认的mysql服务名,如果你修改过服务名,则需要改成修改后的服务名。
cmd关闭mysql服务:
net stop mysql80下面这种情况,表示服务关闭:
3. MySQL客户端连接MySQL连接客户端的三种方式
4. MySQL基本语法SQL语句以分号结尾。SQL语句不区分大小写注释的内容不被执行 a. 单行注释:-- 注释内容 或 # 注释内容 b. 多行注释:/注释内容/详细的语法教程,可以参考我的另一篇文章:MySQL语法详解
二、数据库操作1. 查询show databases;# 查看所有数据库select database();# 查看当前使用的数据库show create database test;# 查看数据库建表语句show variables like '%character%';# 查看当前使用的字符集2. 创建create database 数据库名;3. 使用use 数据库名;4. 删除drop database 数据库名;5. 案例1)查看MySQL中都有哪些数据库:有4个数据库
2)创建一个 user 数据库:创建成功
3)再次查看MySQL中有哪些数据库:可以看到,多了一个 user 表
4)查看当前使用的数据库:NULL表示当前没有使用数据库
5)使用 user 数据库:使用成功
6)再次查看当前使用的数据库:变成了 user
7)删除 user 数据库:删除成功
8)再次查看MySQL中有哪些数据库:user 表已被删除
三、表操作1. 查询show tables;# 查看当前数据库下的所有表show create table student;# 查询建表语句desc student;# 查询表结构2. 创建create table 表名(字段1 字段1的数据类型, 字段2 字段2的数据类型, …… 字段3 字段3的数据类型,)3. 修改修改表名
alter table 表名 rename 新表名;添加字段
alter table 表名 add 字段名 数据类型(长度);修改数据类型
alter table 表名 modify 字段名 新数据类型(长度)修改字段名和字段类型
alter table 表名 change 旧字段名 新字段名 数据类型(长度);删除字段
alter table 表名 drop 字段名4. 删除drop table 表名;5. 数据类型简单介绍两种最常用的数据类型:
int:数值型,常用来保存数字varchar:字符型,常用来保存字符串6. 案例前提:创建一个 user 数据库,并使用 user 数据库。
1)查看当前数据库中都有那些表:空,一个表也没有
2)创建一个 student 表,有三个字段:
id:int 类型,存储学号name:varchar 类型,存储学生姓名age:int 类型,存储年龄注意:int(10) 括号中的数字是数据的最大长度,单位是字节。
3)创建成功后,再次查看数据库中都有哪些表:多了一个 student 表
4)删除 student 表,再次查看数据库中有哪个表:空,student 表已被删除
四、数据操作1. 添加指定字段添加数据
insert into 表名 (字段名1,……) values(值1,……),(值1,……),……全部字段添加数据
insert into 表名 values (值1,……),(值1,……),……2. 修改update 表名 set 字段1 = 值1,……[where 条件]3. 删除delete from 表名 [where 条件]4.查询select * from 表名5. 案例1)user 数据库中,创建 user 表,建表语句如下:
use user;create table student(id int(10),name varchar(50),age int(10));2)指定字段(id,name,age)添加两条数据后,查询 user 表中的数据:数据添加成功
3)向所有字段添加一条数据后,查询 user 表中的数据:数据添加成功
4)修改 zhangsan 的年龄为 28:,删除 lisi 的数据后,查询 user 表中的数据:
五、查询操作数据库90%的操作都是查询,这里单独列出来。
1. 条件查询 whereselect 字段列表 from 表名 where 条件列表;select * from student;# 查询表中所有数据select * from student where age = 1;# 条件过滤select name from student where age = 1;# 指定字段select name,age from student,user,user2;# 多个字段/表,使用逗号分隔select distinct scroe from student;# 去重select name as newname from user;# 别名2. 分组 group by提示:分组查询必须配合聚合函数。
select class ,count(grade) from student group by class;3. 排序 order by,desc/ascselect 字段列表 from 表名 order by 排序字段列表;select * from student group by grade desc;# 降序排列select * from student group by grade asc;# 升序排列4. 条件 having提示:having必须在分组后使用
select * from student having grade > 60 order by grade asc;5. 分页查询 limitselect 字段列表 from 表名 limit 第几条开始,显示几条;查询条件可以互相配合使用,完整的查询语法如下:(查询条件可以省略,但顺序不能变)
select 字段列表from 表名where 条件列表group by 分组字段列表having 分组后条件列表order by 排序字段列表limit 分页参数6. 特殊查询select name,age+scroe as num from student;# 查询的列 支持运算符select salary from employee where bonus is not null;# 查询非空select salary+ifnull(bonus,0) 总工资 from employee; # 为null则取07. 联合查询两张表的查询结果一起显示,字段数必须相同,默认去重
select * from studentunion [all/distinct]select * from student;8. 子链接查询在一条select语句中,嵌入另一条select语句
select * from exam where id = ( select id from user where name = '张三');select * from exam where id in (select id from user);select * from exam where (id,name) = (select id,name from user);9. 案例1)查询 student 表中满足条件( age > 18 )的用户信息:
2)在上面查询的基础上,按照名字排序(默认按照id排序):排序发生变化
3)在上面查询的基础上,分页展示信息,从第1条数据开始,展示1条:
注意:数据从0条开始计数。
相关文章推荐,点击下方链接查看文章: MySQL order by关键字详解 order by排序判断字段数原理详解
六、常用函数1. 信息收集类函数作用user()当前使用数据库的用户version()数据库版本database()当前使用的数据库@@datadir数据库所在位置@@version_compile_os操作系统版本2. 注入相关点击左侧函数名,可查看函数详细使用方法
函数作用group_concat( 字段1,字段2)将多行查询结果拼接成一行concat(str1,str2)拼接多个字符串substr(str,start,length)截取字符串if(condition,T,F)条件判断length(str)返回字符串长度Hex(str)字符串转换成16进制sleep(time)延时指定时间(单位秒)上一篇:【蓝桥杯Web】第十四届蓝桥杯(Web 应用开发)模拟赛 1 期-职业院校组 | 精品题解(蓝桥杯b组2020)
下一篇:Vue 国际化之 vue-i18n 的使用(vue国际化占位符)
友情链接: 武汉网站建设