mysql(完整版)

mysql(一)

1.登录mysql

1.mysql -uroot -p加密码。

2.mysql -A python1 -uroot -p加密码(直接进入指定数据库无需使用use功能)

在这里插入图片描述

2.库级操作

一般操作比较简单,先用mysql -uroot -p加密码进入mysql,之后通过show databases;查看所有的数据库,如果没有就创建一个新的数据库,通过create database 加名字,如果有就用use database 加名字直接进入使用,删除数据库用drop database加名字就好

在这里插入图片描述

3.表级操作

表级操作和库级操作是几乎一模一样的,这里就是演示下不多说

注意,create table 加名字时后面要注意加上数据和格式!!!!!

多了一个show create table 加名字,这个是查询创建信息

在这里插入图片描述在这里插入图片描述

4.表内操作
1.增

1.insert into 加名字 values(),(),();

2.insert into 加名字 values();

3.insert into 加名字(指定字段)values(指定字段的值)

4.insert into 加名字(指定字段)values(指定字段的值),(指定字段的值);

在这里插入图片描述

2.删

1.delete from 加名字

2.delete from 加名字 where

注意,一定要用where

在这里插入图片描述

3.改

1.update 加名字 set 改的内容(整个全改)

2.update 加名字 set 改的内容 加where

在这里插入图片描述在这里插入图片描述在这里插入图片描述

4.查(最重要的)

1.select * from 加表名

2.select 部分部件 from 加表名

3.select 部分部件 from 加表名 where 加条件

在这里插入图片描述

5.数值类型

在这里插入图片描述
在这里插入图片描述

mysql(二)

1.比较运算符

[外链图片转存失败(img-wZrobtEZ-1564275904098)(../AppData/Roaming/Typora/typora-user-images/1564032651191.png)]

2.逻辑运算符

[外链图片转存失败(img-jZ9BvPo5-1564275904098)(../AppData/Roaming/Typora/typora-user-images/1564032677693.png)]

优先级(not > and >or),应用于where后面。

3.其他操作(排序等)

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
这个limit是限制条数,当然如果你想从选取几个,就可以像第二个一样,前面的数字是其实个数,后面的是几个

[外链图片转存失败(img-zbGiAyQS-1564275904105)(../AppData/Roaming/Typora/typora-user-images/1564036078617.png)]

这个去重是去掉完全相同的数据

[外链图片转存失败(img-FewVB8ha-1564275904105)(../AppData/Roaming/Typora/typora-user-images/1564036201053.png)]

也可以只是选取其中的一部分

[外链图片转存失败(img-Nydav7bj-1564275904105)(../AppData/Roaming/Typora/typora-user-images/1564032782653.png)]

[外链图片转存失败(img-jXJVMmt5-1564275904106)(../AppData/Roaming/Typora/typora-user-images/1564036685324.png)]

4.分组聚合
4.1常用的函数

[外链图片转存失败(img-gjRrHptN-1564275904106)(../AppData/Roaming/Typora/typora-user-images/1564045146489.png)]

[外链图片转存失败(img-kOm9megA-1564275904106)(../AppData/Roaming/Typora/typora-user-images/1564045169112.png)]

[外链图片转存失败(img-8e3Se8cE-1564275904107)(../AppData/Roaming/Typora/typora-user-images/1564045309029.png)]

这个比较重要一些

4.2分组

[外链图片转存失败(img-WpqxzdS5-1564275904107)(../AppData/Roaming/Typora/typora-user-images/1564045555328.png)]

这个是专门和group_concat一起用的,但是注意group by 后面的东西前面必须有,因为是以前面的为分组的基础的,所以前面必须要有。

4.3聚合

执行顺序是先where,然后执行很多的聚合函数,最后进行having

[外链图片转存失败(img-7OdQiYiU-1564275904107)(../AppData/Roaming/Typora/typora-user-images/1564055017220.png)]

,这个是最全组合,成功的把分组和聚合放在了一起,注意,id等属性必须是一个,而且和group by 后面的对应,但是呢,id后面的聚合函数不是唯一的,可以多个聚合函数放在一起,而且这个having后面的条件必须在group by 之后指定的,就是必须是id,因为优先级的原因,但是如果没有 group by就和where和效果一模一样。

mysql (三)

1.表结构修改

[外链图片转存中...(img-EG7QdZqi-1564275904108)]

这是关于表结构的各种操作。

在这里插入图片描述

2.约束条件

[外链图片转存失败(img-jI9miYV8-1564305858975)(assets/1564285065038.png)]

2.1 默认约束

1564295576499.png1564295723341.png

这里的插入,只是设置了name,但是id没有设置,也还是有值,所以它是直接使用的默认的值。这就是默认约束。

2.2 非空约束

1564295516047.png1564295971301.png

这个非空,就是说必须不能为空。

1564296172488.png

将前两个加在一起如果不输入,就直接把默认的约束放在里面了。

2.3 唯一约束

1564296246611.png1564296540281.png

只能有唯一的id值,否则报错。
1564296961766.png

但是唯一可以都为空。

2.4主键约束

1564297006568.png
主键等于非空加唯一。
这里添加一下,如果想删除主键的话,就用alter table tb drop primary key,但是如果被其他表连接上的话,就不能直接删除,可以先删子表的连接,就是foreign那个,当然如果还有自增长的话,先把自增长删除就行了。
1564297119492.png

可以说,你只需要限制key就自动的变成非空了。

2.5 自增长

156429721717915642981319931564298248572
这里的自增长一般都是和主键一起用的,因为非空,但是你如果还懒得打,或者你不知道前一个到哪了,你就可以通过哟个default来代替之前的位置。

2.6 外键约束

1564298394858

其实就是简单的讲,就是一个是主表,一个是子表,对于关联的属性,其中的内容,如果主表没有,子表肯定没有,而且删除的话会先删除子表以防误删。
1564299341674
这个是创建关系。
1564299382452
这里可以看出b只能添加a已经有的数据,对于其他额外的id,b是不能添加的。

3.表关系
3.1一对一的关系

这个就不用代码演示了,就是上面的简单的外键约束。
1564303919616

这个就是一个例子。

3.2 一对多

1564303964925

一对多就是多个一对一,也很简单。

3.3 多对多

1564304026527

这个就有些难度了,接下来代码演示一下。
1564305342597156430539049615643053191821564305661356

就是这个关系。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值