mysql的shell命令

本章的内容为-- mysql的终端命令


众所周知mysql(数据库)--是噩梦的开端,大家可能都会mysql在Navicat(数据库的可视化工具)中的操作,所以这边建议是mysql和Navicat(数据库的可视化工具)配套安装

navicat的免费版本--https://macwk.com/soft/navicat-for-mysql


 

1.show databases //查看总体的数据库

 


2.如果已经有想操作的数据库了,就直接-------use+库名--->直接看.4
2.1如果没有想要的库,就新建一个库-----------create + database + 库名

 

3.如果执行了2.1-----就再show databases //查看总体的数据库,看看是否新建了,顺便看看库名
3.1 use 库名

 

 

4.进入4的前提,是确实已经use进自己想要的库---的前提下
然后查看自己的<表>-----------这里注意--------(数据库-->表)

 


5.先查看表
show tables ------如果已经有表,并且想查看表,请直接跳到.7(2)

 

附加:清空表的数据(创建时候的表结构还在)

truncate table + 表名

-------------------------------------------

### 附加:修改表的“属性”的各种操作

1-修改属性的位置,修改属性name到sex后面:

alter  table + 表名   modify  name  after  sex;

eg: alter  table   表名   modify  name  varchar(255)   after   sex;

 

2-修改字段的属性-把varchar(255)改成varchar(5)

alter  table + 表名   modify  name varchar(5);

 

3- 修改字段名:把name改成userName

alter  table + 表名  change  name  userName;

 

4-添加属性字段:在userName后面添加一条gender字段

alter  table  + 表名  add  gender  after  userName;

 

5- 修改“表”名:

rename  table  +原来的表名   to    新的表名

 

6-删除字段:

alter  table  表名   drop   column   要删除的字段;

---------------------------------------------------

  

 

 

6.如果表为empty,就新建一个表
新建:
create table +你想要的表名(
id int primary  key(11),
username varchar(255),
...
...
)
;

 

//这样表就新建好了,具体需要新建的内容,根据自己定义-----这里注意你这里新建的是,你需要的内容,但是里面为空,后续要自己填写,而填写的内容,
就是根据你现在设置表的基本属性填写的,所以设置表的时候要思考

 

 

7.创建好后,再次show table ,查看自己新建的表与表名
(1)describe+表名
(2)select *from +表名

//这里的(1)(2)是用来查看表的内容,但是(1)查的是字段的属性(2查的是表的内容)


 

//附加:
//接下来是对内容(7)的附加,初学者等学完。10,再回头来看
//这里是锁定,或者查找--范围性的
select *from +表名 +where id>10 ;
select *from +表名 +where name="xxx"
这些可以用where快速找到


 


8.添加<<表>>的内容
insert into +表名(____,_____,____,写的是属性)

//这里就是你在创建表的时候,定义的属性,如果忘记了别怕,7(1)的内容:describe+表名
 values(___,____,_____,),(___,____,_____,),(___,____,_____,);

//可以一次性传入多个,这里是你对应属性,所定义的值

//如果传入的是:varchar的内容,添加时候要加上  '   ' 符号。

//例子:insert into EnglishBook (id,name,age)  values(1,'kobe',18),(2,'chenxixi',19),(3,'kyrie',12);

 

9.再次show table //查看表名

 

 

10. select *from +表名 //可以查看你写入的内容

 


11.修改《表》的指定内容

show databases;
1.先use到需要到/资源库中/仓库中----->一个意思
2.show tables---->查看仓库中所有的'表'
3.select *from + 表名 //查看该表的内容
4.如果需要进行修改《表》的内容
update +需要改的《表》名 + set + 你需要吧什么改成什么 + where + 一个他前面的标志
(这个标志怎么理解:比如A,B,C,D,E,F,六个人,这时C喜欢的女生在E后面,C就要想和E换位置,那C肯定要告诉E我前面有A,B两个美女,E就同意换)
such-as:---> update user set age =99 where username='欧文';


 


12.删除《表》的指定内容
1.先use到需要到/资源库中/仓库中----->一个意思
2.show table---->查看仓库中所有的表---------->这里获得的表,就是下面的表名
3.select *from + 表名 //查看该表的内容
4.如果要删除《表》的内容
delete from +表名 +where +你需要修改的内容
such-as:---> delete from user where username="科比";


 


13.排列顺序
1.先use到需要到/资源库中/仓库中----->一个意思
2.show table---->查看仓库中所有的表---->*2进行的就是---这里获得的表,就是下面的《表名》
3.select *from + 表名 //查看该表的内容
4.如果你想要排列
升序
select *from +表名+ order by id asc //注释这里的id是自己在,定义表的基本结构定义的,你可以改成age,money都可以
降序
select *from +表名+ order by id desc


 


14.统计数据
select count(1)from + 表名
这里的(1)表示第一‘列’ --竖下来的。


 

15.limit,可以对他进行分开查找(这个是按id,一条一条的找信息)
select *from +表名 +limit  n

//这里的n我做解释:n表示---他会出现从 0--n 的内容
//if,要中间部分

//n=0,是第一条信息
select *from +表名 +limit n ,x //这里n,x表示,出现内容为,n---->x,这部分的内容

例子:select *from EnglishBook limit 0,3 ;


 


16.删除《一整个表》这里与。12做区分------>12是删除表的数据,16是删除一整个《表》

show tables;  //知道有哪些表
drop table +表名字


 

17.删除《一个数据库》

show databases ; //知道有哪些数据库名
drop database + 数据库名

 

 



这里解释一下,如果下面出现的《想要的条件》,是创建表格时候的  基本条件 = 字段类型 )
describe + 表名

//就可以查看 ‘字符类型’---> Field的部分就是



18.查看一个《表》里面的的某个地方是否为空
select *from +表名 +where +想查的列 is null OR  字段类型 =""; //那个OR是,或者

例子:Select * From EnglishBook  Where id!=''


 

 

19.查看一个数据的范围(范围自己规定)

//eg1-eg2,效果一样
eg1: select *from +表名 + where + 字段属性 > xx  and  字段属性 < xx //注释:想要的条件是在创建表的时候,定义的条件=字段属性
eg2: select *from +表名 + where + 字段属性 between xx and xx //注释:表示在xx与xx分数内的范围
eg3: select *from +表名 + where + 字段属性 not between xx and xx //注释:表示不在xx与xx分数内的范围

 


20.查看数据的具体数

//19与20的区别为一个是范围,一个具体内容


eg1 : elect *from +表名 + where + 字段属性 in(xx,yy,ff) 


/*

举个例子,你的段属性选择的是age

那么你应该这样写:elect *from +表名 + where + age in(15,45);

那么你出来的就会是age=15,45的这写数据:

+----+----------+------+
| id | name      | age  |
+----+----------+------+
|  1 | zhangsan  |  15 |
|  3 | lisi           |  45 |
+----+----------+------+

*/

 


21.模糊查询,就是可以查找一个文件的尾巴,头部------用部分信息查找具体文件
//这里的细节是要用''而不是""
eg1 : select *from +表名 + where + 字段属性 like '% 这里加上模糊的信息 %'       //这个表示全局查看,有他的内容都显示
eg2 : select *from +表名 + where + 字段属性 like ' 这里加上模糊的信息 %'         //这里的%很细节,2中表示查看开头
eg3 : select *from +表名 + where + 字段属性 like '% 这里加上模糊的信息'          //这里的%%很细节,1中表示查看尾巴


 

22.函数
1.求平均数
select avg(+字段属性) from 表名
2.求人数
select count(+字段属性) from 表名
3.求最大值
select max(+字段属性) from 表名
4.求最小值
select min(+字段属性) from 表名
5.求和
select sum(+字段属性) from 表名

 


23.
对22的进化
在22中,我们只能找到最大的分数,现在我们要找到最大分数人的全部信息
只要在前面加入select * from class where score in()就可以,接下里,看具体
eg1 : select * from 表名 where 想要的条件 in(select max(想要的条件) from 表名)
such-as : select * from class where score in(select max(score) from class)
最小值人也一样,这边就不示范l

 


24.
mysql的别名:
语法:select 条件名字 as 需要该的名字,条件名字 as 需要该的名字 ,条件名字 as 需要的名字 from +表名
就是用as来取别名

 



25.(索引)
1.添加一个索引----找东西会快
create index +你想要索引的名字 +on +表名+列名

 

2.添加一个<唯一索引>----找东西会快-----但是唯一索引不能重复
create unique index + 你想要索引的名字 +on +表名+列名

 

3.删除一个表的索引
drop index 已经创建的表名 + on + 表名

 

4.查看索引
show index from + 表名\G

 



事务
打开事务后,可以让你在终端的结果,不会马上回馈到资源库里面,要commit后才会回馈
begin 开始一个事务
rollback 事务回滚
commit 事务确认

 

 



设置锁
lock table +表名 +read/write
解锁
unlock tables

 

更新中.......

 

posted on 2022-05-09 23:11  陈嘻嘻-  阅读(393)  评论(0编辑  收藏  举报

导航