Delete、Truncate和drop的删除区别、DDL与DML的区别

本文详细探讨了数据库中Delete、Truncate和Drop命令在删除数据时的不同点,包括对元数据、索引、交易日志的影响。同时,阐述了DDL(Data Definition Language)与DML(Data Manipulation Language)的主要区别,强调了它们在数据库操作中的角色和适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Delete、Truncate和drop的删除区别:

1delete和truncate仅仅删除表中的数据,drop连同数据和表的结构一起全部删除,打个比方,delect是是删除电脑上的一个文件,truncate是删除一个文件夹,drop是格式化磁盘。
2、delect是DML语句,操作完以后如果没有提交事务还可以回滚,truncate和drop是DDL语句,操作即生效,无法回滚,打个比方,delete是删除文件了,还可以去回收站找回,truncate和drop是直接被永久从磁盘上清除了,无法找回来。
3、执行的速度是,drop>truncate>delete,打个比方,drop是光速,truncate是飞机,delete是自行车。

DDL与DML的区别:

DML(Data Manipulation Language)数据操纵语言:
适用范围:对数据库中的数据进行一些简单操作,如insert,delete,update,select等.

DDL(Data Definition Language)数据定义语言:
适用范围:对数据库中的某些对象(例如,database,table)进行管理,如Create,Alter和Drop.

一、DDL(数据定义语言,Data Definition Language)
建库、建表、设置约束等:create\drop\alter
1、创建数据库:
create database IF NOT EXISTS hncu CHARACTER SET utf8;
2、创建表格:
use hncu;
create table IF NOT EXISTS stud(
id int,
name varchar(30),
age int
);
3、更改表结构(设置约束)
desc stud; //查看表结构
alter table stud drop column age;
alter table stud add column age int;
4、删除表、删除数据库
drop table stud;
drop database hncu;

二、DML (数据操纵语言,Data Manipulation Language )
主要指数据的增删查改: Select\delete\update\insert\call
select * from stud;
select name,age from stud; //查询指定的列
select name as 姓名, age as 年龄 from stud;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值