mysqlDDL(数据库),DML(增删改),DQL(查询),DCL(用户权限)

基础

SQL

DDL:数据定义语言,用来定义数据库,表,字段

DML:对数据库中的数据进行增删改

DQL:对数据库表中的数据进行查询

DCL:用来创建数据库用户,控制数据库的访问权限

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W4C9h4dQ-1653654942703)(https://gitee.com/y-tao/imgsup/raw/master/imgs/image-20220526223232304.png)]

DDL

数据库

#查看数据库
show databases;
#创建数据库之前判断是否存在,并设置字符集#utf8mb4
create database if not EXISTS db_2 DEFAULT charset utf8mb4;
#使用数据库
use db_2;
# 查询当前使用的数据库
select database()
#删除数据库
drop database if exists  db_2;

#查看当前数据库的表
show tables
#查看某个表的表结构
desc tb_test
#查看创建表语句
show CREATE table tb_test

#
create table if not exists tb_user(
	id int comment '编号',
    name varchar(50) comment '姓名'
)comment '用户信息'
DML

对表中的数据进行增删改

insert into tb_user (id,name) VALUES (1,"dd");

insert into tb_user VALUES (1,"cc",1);

UPDATE tb_user set name = "张三" where  id = 1;

update tb_user set id=2,name="abc";

DELETE  FROM tb_user where id=2;

DQL

对表中的数据查询

select * from tb_test where ab between 2 and 4;

select distinct ab from tb_test where ab in (2,4,14);

select id from tb_user where age in (18) && name like "%三%"

#聚合函数  null值不参与聚合函数计算
select max(id) 最大,min(id)最小,count(*),avg(id),sum(age) from tb_user;
3
#group by 分组函数
select id,count(*) c from tb_user group by id having c>=2;

#order by   ASC升序 desc 降序
select id  from tb_user id ORDER BY id  ASC ,age desc

#limit
select * from tb_user limit 0,5;

DQL执行顺序

​ 1.from决定查询的表单

​ 2.where 决定查询条件

​ 3.group by决定分组having分组后条件

​ 4.select 决定查询的内容

​ 5.order by决定查询内容的排序

​ 6.limit决定排序之后的分组

DCL

对数据库用户,数据库的访问权限

#查询所有用户
select * from user
#创建用户me,连接主机localhost密码123456
create user 'me'@'localhost' identified by '123456'
#修改用户me 密码为1111
alter user 'me'@'localhost' identified with mysql_native_password by '1111'
#删除用户me
drop user 'me'@'localhost'
DCL权限设置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-saFyxkPv-1653654837920)(D:\anzhuang\typora\imgs\image-20220527192341795.png)]

#给me用户添加一个db1数据库下所有表的所有权限
grant all on db1.* to 'me'@'localhost'
#查看me用户的所有权限
show grants for 'me'@'localhost'
#移除me用户的db1的所有表的所有权限
revoke all on db1.* from 'me'@'localhost'

o ‘me’@‘localhost’
#查看me用户的所有权限
show grants for ‘me’@‘localhost’
#移除me用户的db1的所有表的所有权限
revoke all on db1.* from ‘me’@‘localhost’










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值