重拾MySQL

完成了考研这个任务,准备考软件设计师,刚开始复习,发现之前学的所有知识全部都忘记了,JavaWeb,数据库,Android等等都忘记了,现在只能按照软件设计师的要求来进行复习,最开始我选择的是数据库,在我看来,一个软件最重要的就是数据库了,数据库设计好了,剩下的就是就是增删改查了。这篇文章就是重新复习MySQL数据库的知识。

这篇文章主要从以下几个方面来复习MySQL:

1、MySQL的登陆与退出

2、DDL

3、DML

4、DQL

5、字段的约束、外键

6、表与表之间的关系、三大范式

7、事务

8、DCL

9、查询典例

1、MySQL的登陆与退出

MySQL的登陆方式有两种,一种是采用命令行的方式,win+R,输入cmd,输入 mysql -u 用户名 -p密码(前提是把mysql放在环境变量中),退出方式直接输入exit;第二种是采用可视化界面的方式进行连接 ,退出方式关闭程序即可。

2、DDL

DDL主要是操作库和表的一些语句,常用的如下:

  • show databases—–查看所有的数据库
  • use database 数据库名称 —–使用某个数据库
  • create database 数据库名称—–创建数据库
  • drop database 数据库名称—–删除数据库
  • alter database 数据库 character set utf8 —–修改数据库的字符集为ut8
  • show tables ——查看所有的表
  • create table 表名 (字段名 类型 约束);—–创建表格
  • drop table 表名 ——删除表
  • alter table 表名 add 字段名 约束 ——-增加一个字段名
  • alter table 表名 modify 字段名 类型 约束 ——-修改表的字段名
  • alter table drop 字段名——删除表地字段名

3、DML

DML主要是对表中记录地增删改

insert into 表名 (字段名)values (对应地值)——-增加数据

update 表名 set 字段名=值 where 条件——-修改字段的值

delete from 表名 where 条件——删除记录

在更新和删除记录时,一定要注意这个条件,我记得我们医院的老师有一次就是更新数据,把医院所有科室的名称都改成骨科了,造成所有患者的挂号界面显示的都是骨科,这一点一定要注意。

4、DQL

DQL在所有的语句中用的最多,在我实习的过程中,带教老师用的最多的就是多表查询,看了老师写的SQL语句,在比较自己之前在学校写的SQL语句,一比较,相形见绌,老师写的SQL连接了很多表,而且医院的数据库的表的字段名特别多,很复杂!

单表查询:select * from 表名 where 条件 group by 字段 having 条件 order by 字段 ,这是最基本的一个查询语句。

去重语句:select distinct 字段名 from 表名 as a;

条件查询,模糊查询 :条件查询就是在where后面加上条件即可,模糊查询,where name like ‘_%’,”_”代表单个字符,“%”代表多个字符

排序查询:order by 字段名 asc desc

聚合函数:对列做运算!!!!count(),sum(),max(),min(),avg();

分组查询:group by 字段名 having 字段名 条件;分组查询的字段只能是 分组字段或者聚合函数

分页查询:select * from 表名 limit 开始索引 显示数量

开始索引=(页数-1)*显示数量

约束:primary key 主键 foreign key 外键 unique 唯一 not null 不为空 auto increment 自增

外键 constraint 外键别名 foreign key(字段名)references 表名(列名)(on update cascade)级联更新(on delete cascade)级联删除,级联更新和级联删除可以省略。

5、表与表之间的关系、三大范式

表与表之间关系有三种,一对一,一对多,多对多,一对一关系的表合成一张表,一对多的表需要借助外键,多对多关系需要借第三张表来联系多对多的关系。数据库的三大范式比较抽象,我记得当时我在学习的时候,就挺困难的,1NF是要使所有的属性不在可以分割,2NF是要消除部分依赖,3NF是要消除传递依赖。

6、事务

事务包含多个操作,这些操作同时成功,或者同时失败,比如在在银行转账的操作,A向B转500元,首先A自己的账户要减少500,B的账户要增加500,若两个操作不是在一个事务中,就有可能会发生A的钱减少了,但是B的钱没有增加。

事务的具体操作就是:开启事务,start transaction 回滚rollback 提交commit

事务具有四大特性,原子性,持久性,一致性,隔离性

7、DCL

DCL操作一般就是DBA所操作的,一般程序员了解即可

查询用户:在mysql中的user表中

添加用户:create user 用户名@主机名 identified by  密码

删除用户:drop user 用户名@主机名

查询权限:show grants for 用户名@主机名

授权:grant 权限列表 on 数据库.表名 to用户名@主机名

撤销权力:revoke 权限列表 on 数据库.表 from 用户名@主机名

 

MySQL的知识大致就复习到这吧,以后学习到新的知识在继续往这添加!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值