【Mysql】DDL、DML、DQL、DCL概括

一、数据定义语言: DDL

1.1 创建和管理数据库

a.创建数据库[create]

方式1:

create database db1_test;

方式2: 指定字符集

create database db1_test character set 'utf8';

方式3: 判断该数据库是否不存在

create database if not exists db1_test;

 

b.使用数据库(查看[show],使用[use])

查看所有数据库:

show databases;

查看数据库创建信息:

show create database db1_test;

查看指定数据库下的表:

show tables from db1_test;

使用(切换)数据库:

use db1_test;

 

c.修改数据库(字符集[alter])

alter database db1_test character set 'gbk';

 

d.删除数据库[drop]

方式一:

drop database db1_test;

方式二: 判断该数据库是否已经存在

drop database if exists db1_test 

 

1.2 创建和管理表

a.创建表[create]

方式一:

create table [if not exists] table_01 (
字段 数据类型 [约束条件] [默认值],
id INT UNIQUE DEFAULT  3, 
first_name CHAR(10) DEFAULT '张三',
salary INT
);

方式二: 基于当前的表创建新的表

create table [if not exists] table_01
as
select *
from table_02
where ...;

 

b.修改表[alter]

增加一个字段:[add]
alter table table_01
add last_name varchar(5) [DEFAULT 默认值] [not null] [AFTER first_name|first];
修改一个字段:[modify]
alter table table_01
modify last_name char(5) [DEFAULT 默认值] [not null] [AFTER first_name|first]; // 数据类型可以不修改,但一定要加上。
重命名一个字段:[change]
alter table table_01
change id employee_id varchar(10); // 数据类型也可一同修改
删除一个字段:[drop]
alter table table_01
drop last_name;

 

c.重命名表[rename]

方式一:

rename table table_01
to table_03;

方式二:

alter table table_01
rename table_03;

 

d.删除表[drop]

drop table [if exists] table_01,table_02,table_03 ...

 

e.清空表[truncate]

truncate table table_01;

 

二、数据操作语言: DML

2.1 增(insert)

方式一: values的方式添加

insert into table_01(id, first_name, salary) // 可指定字段顺序
values (value1,value2,....);
insert into table_01 // 默认字段顺序
values
(value1,value2,....),
(value1,value2,....),
(value1,value2,....);

 
方式二: 将查询结果插入到表中

insert into table_01(id, first_name, salary) // 要求字段一一对应
select id, first_name, salary
from table_02
where salary > 10000;

 

2.2 改(update)

update table_01
SET salary = salary + 1500
WHERE first_name =  '李四';

 

2.3 删(delete)

delete from table_01
where first_name = '张三';

 

三、数据查询语言: DQL

编写的顺序:

SELECT ..., ...
FROM ... (LEFT/RIGHT)JOIN ... ON 多表连接条件
JOIN ... ON ...
WHERE  不包含聚合函数的过滤条件 
GROUP BY ..., ...
HAVING 包含聚合函数的过滤条件
ORDER BY ..., ...(ASC/DESC)
LIMIT ..., ...

运行的顺序: (1.筛选 – 2.选择 – 3.排列)

SELECT ..., .../* 2、选择 */FROM ... (LEFT/RIGHT)JOIN ... ON 多表连接条件  /* 1、筛选 */
  JOIN ... ON ...
  WHERE  不包含聚合函数的过滤条件 
  GROUP BY ..., ...
  HAVING 包含聚合函数的过滤条件】
【ORDER BY ..., ...(ASC/DESC)  /* 3、排列 */
  LIMIT ..., ...

 

四、数据控制语言: DCL

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

り澄忆秋、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值