有段时间没有好好整理文章了,这不是又该暑假啦嘛肥学
准备在暑假来波大的,在上一篇里面我也提到过了,想准备考研了所以这个暑假可能是我最后一次大练手了,暑假也准备哪里都不去了,留在家里好好的写几个项目,可能包括python和java两种语言的,详情就尽情期待吧!所以今天总结这个就是为了后面的项目铺垫,后面都要用到但是也不妨碍不学项目的基础学习,好了我们 “不肥身体,肥学问” 来看看这期的MySQL必知必会吧!!
注意:初学者最好用MySQL八点几版本一下的,高版本的可能稳定性不是很好对小白来说还是用五点几版本的吧。下载链接:传送门
下载完后可以安装教程大家可以在csdn
上搜一下安装一定要注意确保一次成功因为数据库卸载重装比较麻烦,注意注意注意,安装时遇到什么问题可以在评论区交流一下
可能下载会比较慢毕竟这是外网,百度网盘最新版好像可以提速了大家要想下载快点可以私聊我回复,MySQL5.7
就能得到资源还可以在我的博客里面找《所有资源的获得处》找到另外在给大家安利一款数据库的可视化便捷操作软件navicat
这个对新手比较友好,但是还是推荐大家操作用基础命令这并不是说专业不专业的问题,基础命令对你了解MySQL操作更加友好,并且为你在以后的实践中打下基础。资源获得方式和上面一样。回复navicat
即可。
MySQL语句看起来就像是英语的句子比如“create table tablename”
等等。看着比较简单但是大家千万别掉以轻心简单操作的背后是复杂的逻辑,以后深入学习后你就会知道的,还有这些操作你可以在命令提示符里面操作
也可以在我刚才说的那个软件navicat
里面操作,软件怎么下载我在上面已经给了
我们下面从命令提示符里面操作讲,学会这个你在navicat
基本上就可以很流畅的完成基本操作了。
net start mysql;--启动mysql服务器
net stop mysql;--关闭mysql服务器
# 其实这个可以不用的直接进入就行了
mysql -u root -p 回车之后输入密码即可进入mysql
quit; 和 exit; --退出mysql
mysqladmin -u用户名 -p旧密码 password 新密码
大家尽量去自己试着敲一下
1.show databases; 查看当前你的所有数据库
2.create database test; 创建一个叫test的数据库
3.drop database test;删除一个叫test的数据库
4.use test;选中库 ,在建表之前必须要选择数据库
5.show tables; 在选中的数据库之中查看所有的表
6.show create database 库名;查看创建库的详细信息
创建表:
create table class(
id int primary key auto_increment,#主键自动怎增长
name varchar(32),
number int
);//创建了一张有三列的表,表名为class。id 为整型,主键且自增长
1.修改字段类型 alter table 表名 modify 字段 字段类型;
2.添加新的字段 alter table 表名 add 字段 字段类型
3.添加字段并指定位置 alter table 表名 add 字段 字段类型 after 字段;
4.删除表字段 alter table 表名 drop 字段名;
5.修改指定的字段 alter table 表名 change 原字段名字 新的字段名字 字段类型
6.desc 表名;查看所在的表的字段
7.show create table 表名; 查看创建表的详细信息
删除可是个大事,一不小心就数据回不来了所以删的时候一定要慎重慎重再慎重!!!
1 drop table table_name : 删除表全部数据和表结构,会立刻释放磁盘空间,
2 truncate table table_name : 删除表全部数据,保留表结构,立刻释放磁盘空间。(此时可以通过desc tablename来查看表结构依然是存在的,但是使用select * from tablename会发现表内的数据已经删除。)
3 delete from table_name : 删除表全部数据,表结构不变,mysql也会立即释放磁盘空间。
4 delete from table_name where xxx : 加了条件判读where从句,表结构不变,不会释放磁盘空间。
5 delete 操作以后,使用 optimize table table_name 会立刻释放磁盘空间。
6 Delete可以rollback撤销,truncate不能。
1.插入增加数据(insert)3种方式
1.1 insert into tablename values(值1,值2,...)(很少用)
1.2 insert into tablename(字段1,字段2...) values(值1,值2,....);(较常用)
1.3 insert into tablename(字段1,字段2...) values(值1,值2,....),(值1,值2,....),(值1,值2,....);
2.删除数据(delete) delete from tablename where 条件 注意:where 条件必须加,否则数据会被全部删除
3.更新数据(update) update tablename set字段1 = 值1, 字段2 = 值2 where 条件
4.查询数据(select)
4.1 查询表中的所有数据 select * from tablename
4.2 指定数据查询 select 字段 from tablename
根据条件查询出来的数据 select 字段 from tablename where 条件
where 条件后面跟的条件
关系:>,<,>=,<=,!=
逻辑:or, and
区间:id between 4 and 6 ;闭区间,包含边界
5.排序
select 字段 from tablename order by 字段 排序关键词(desc | asc)
排序关键词 desc 降序 asc 升序(默认)
5.1 通过字段来排序
例如 :select * from star orser by money desc, age asc;
5.2 多字段排序
select 字段 from tablename order by 字段1 desc |asc,...字段n desc| asc;
6.常用的统计函数 sum,avg,count,max,min
只分组:select * from tablename group by 字段
例子: select count(sex) as re,sex from star group by sex having re > 3;
分组统计: select count(sex) from star group by sex;
7.分组 select * from tablename limit 偏移量,数量
说明:
7.1.不写偏移量的话就是默认的为0
7.2.实现分页的时候必须写偏移量
偏移量怎么计算?:
limit (n-1)*数量 ,数量
8.group by分组 #其实这个操作算是进阶的操作了,这里我就简单的说两句详情我下面的数里面会有介绍
比如
/* 查看不同职位的人数和平均工资 */
select job,count(empno),avg(sal) from emp group by job;
#大家可以体会一下两种方法:
不使用
select count(*),order_code
from lmt_flow_advance_check_apply
where order_code >= 'BJ20190104'
group by order_code;
使用
select count(*),order_code
from lmt_flow_advance_check_apply
group by order_code
having order_code >= 'BJ20190104';
以上是简单的对MySQL操作命令,如果你是小白想了解更多可以读一下MySQL必知必会
如果你想进阶推荐看一下高性能MySQL
,如果大家找不到资源的话,可以和上面navicat
和MySQL
的领取方式一样私信我就可以了。
最后提前预祝大家暑假愉快哦,下一期我们说说python web
框架flask
也是项目需要!!!活都做到这个份上了,就给个三连吧!!!