sql分类 DDL、DML、DCL,与 commit 、Rollback、事务

DDL (Data Definition Language 数据定义语言)

这些语句定了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构
如: CREATE \ DROP \ ALTER \ RENAME \ TRUNCATE 等
注意: mySQL 8.0 DDL有原子性 drop table ta1 ,ta2 ; 若 ta2删除失败,则ta1 会回滚的。

DML(Data Manipulation Language 数据操作语言 ) 使用批次高

用于 添加、删除、更新和查询数据库记录 CRUD
如: CRUD INSERT \ UPDATE \ DELETE \SELECT 增删改查

DCL(Data Control Language 数据控制语言)

用去定义数据库、表、字段、用户的访问权限和安全级别
如: GRANT \ REVOKE \ COMMIT \ROLLBACK \SAVAPOINT 等

COMMIT: 提交数据,一旦执行commit ,则数据就永久的保存再了数据库中,意味着数据不可以回滚
ROLLBACK:回滚数据,一旦执行ROLLBACK,则可以实现数据的回滚。回滚到最近的一次commit之后。

SQL Server

在这里插入图片描述

begin transaction  事务1
insert into Table_1 values(0,'AAzen11');
save transaction  tans_2 --定义一个事务的保存点、当要回滚事务时,可以回滚到这里
delete from Table_1
if @@ERROR >0
begin
commit transaction 事务1
print '0000'
end
else
begin
rollback transaction tans_2 
commit transaction 事务1
print '111'
end

if (exists (select * from sys.objects where name = 'DoSome'))
    drop proc DoSome
go
    create proc DoSome(
        @id varchar(32)
    )
as
    begin transaction
 begin try
        truncate table [dbo].[TestOne];
        insert into TestOne values(@id,'1','2');
        delete from TestOne where id='2'
    commit transaction
 end try
 begin catch
    rollback transaction
 end catch

 exec DoSome 1
MySQL

事务的状态 要么commit 、要么 rollback, rollback to 不是事务的最终状态

---autocommit  默认是 True  语句会自动commit
set autocommit = False

Delete  from   表名

Rollback   
----以上是可以回滚
set autocommit = False

trurncate from   表名

Rollback   
----以上是不可回滚


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

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

链事务

在这里插入图片描述

Truncate Table 和 Delete from

相同点:
都可以实现对表中所有数据的删除,同时保留表结构
不同点:
①Truncate table 一旦执行此操作,表数据全部清除,同时,数据是不可以回滚的
②Delete From 一旦执行此操作,表数据可以全部清除(可以加过滤条件 where,清除指定条件的数据,Truncate 不可以where条件)
同时,数据是可以实现回滚 需要开启不自动提交 set autocommit = False

Truncate table 比 delete 速度快,且使用的系统和事务日志资源少,但Truncate无事务且不触发Trigger,有可能造成事故。故不建议在开发代码中使用此语句

---- Truncate table 在功能上与不带where 子句的Delete语句相同

DDL 和DML

①DDL操作一旦执行,就不可以回滚,加指定 set autocommit = False 对 DDL操作无效(因为执行完DDL操作之后,一定会执行commit,而且commit 操作不受set autocommit= false 影响)
②DML的操作默认情况,一旦执行,也是不可以回滚的,因为 autocimmit 默认是 True。 如果在执行DML之前,执行了 set autocommit = False ,则执行的DML操作就可以实现回滚。

Ares-Wang
关注 关注
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
oracle数据库dcl,OracleDMLDDLDCL详解
weixin_34101914的博客
04-04 1207
DML 全称Data Manipulation Language,即数据操作语言:insert update delete selectDDL 全称Data Definition Language,即数据定义语言:create alter drop runcateDCL 全称Data Control Language,即数据控制语言:commit rollback表名和列名命名规则:必须以字母开头...
SQL语言分类 DQL DML DDL DCL 四种
weixin_46388437的博客
08-08 590
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCLSQL(Structure Query Language) 结构化查询语言 DQL(data query language) 数据查询语言 select操作 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE 子句组成的查询块: SELECT <字段名表> FROM <表或视图名> WHERE <查询条件> DML(data manipulati
数据库DDLDML、DQL、DCL名词详解
12-14
简言之: 1,DDL(DataDefinitionLanguage):数据定义语言,用来定义数据库对象:库、表、列等; 2,DML(DataManipulationLanguage):数据操作语言,用来定义数据库记录(数据); 3,DQL(DataQueryLanguage):数据查询语言,用来查询记录(数据); 4,DCL(DataControlLanguage):数据控制语言,用来定义访问权限和安全级别。 举例说明 1,DDL 用来定义数据库对象:库、表、列等; 适用范围:对数据库中的某些对象(例如,database,table)进行管理,如Create,Alter和Drop. 注意:
Mysql基本的操作(DDL,DML,DCL,DQL)总结
ChenWenKen的博客
12-07 1224
DDL(定义语言的操作): 1,修改表名:alter table 表名 rename 新表名; 2,添加表内字段:alter table 表名 add( 列名 列类型); 3,删除表内字段:alter table 表名 drop 列名; 4, 修改列类型:alter table 表名 modify 列名 列类型; 5, 修改列名与列类型:alter table 表名 change 列名 新列名 列...
SQLDMLDDLROLLBACKCOMMIT详解
最新发布
kewaqi618的博客
07-11 1544
DMLDDLROLLBACKCOMMIT相关知识的讲解。get
SQL语句、DML/DDL操作、事务
zc461346605的博客
07-20 250
1、定义 DDL(data manipulation language):数据库定义语言 DML(data definition language):数据操纵语言 2、DDL关键字 CREATE 创建表 creat table tableName{ 列名 数据类型 (列属性); 列名 数据类型 (列属性); ......... ...
数据库学习之MySQL (四)——DQL DDL DML DCL 事务 到底是什么
菜鸡的学习之路
01-23 4403
DQL 数据查询语言 DDL 数据模式定义语言 DML 数据操作语言 DCL 数据控制语言 事务 Transaction
SQL commitrollback
qq_53645433的博客
04-21 1376
DDL数据库定义语言 DML数据库操作语言 DCL数据库控制语言)
详解SQL四种语言:DDL DML DCL TCL
09-10
SQL语言是用于管理和操作关系型数据库的强大工具,它由四种主要的语句类型组成:DDL(Data Definition Language),DML(Data Manipulation Language),DCL(Data Control Language),以及TCL(Transaction ...
MySQL基础篇3——DDLDMLDCL使用篇
04-02 2671
此笔记来自b站尚硅谷课程,仅做复习使用。 一、创建和管理库1、创建数据库(CREATE DATABASE)2、修改数据库(ALTER DATABASE)3、删除数据库(DROP DATABASE)二、创建和管理表1、创建表(CREATE TABLE)2、修改表( ALTER TABLE)3、重命名表(RENAME TABLE)4、删除表(DROP TABLE)5、清空表(TRUNCATE TABLE)6. DCLCOMMITROLLBACK三、数据处理之增删改1、添加(INSERT INTO)
mysql ddl 事务_Mysql DML操作事务未提交情况下进行DDL操作会造成Meatadata 锁
weixin_42386511的博客
01-27 434
问题描述3月29日至3月30日早上8点,报表订阅发送队列阻塞,造成大量业务报表没有及时发送事后分析发现执行Dnsmasq报表任务时间过长,造成队列消费者worker程序block(由于每天报表任务不多<100,固采用单线程wroker执行) 我们具体查看了计算结果表mc_stat_dnsmasq 和这个时段指标历史数据,发现metadata lock表锁(图1). dnsmasq表被锁造成报...
SQL回滚的作用什么
07-18
SQL回滚的作用什么,什么是SQL回滚的作用
关系数据库的语言分类 DDL DML DCL(转)
muzijiji的专栏
10-27 523
<br />1. 数据定义语言(data define language) DDL   <br /> <br /> <br />这类语句是用来建立数据库基本组件的,例如建立表,建立视图等等。包含create语句、drop语句、alter语句、truncate、comment、grant、revoke<br /><br /><br />2.数据操作语句言(data manipulate language)DML <br /> <br />这类语句的作用是根据需要写入、删除、更新数据库中的数据。主要包括se
MysqlDDLDML
Fate的博客
04-29 86
DDL 库管理 创建库 create database [if not exists] 库名; 删除库 drop databases [if exists] 库名; 建库通⽤的写法 drop database if exists 旧库名; create database 新库名 表管理 创建表 create table 表名( 字段名1 类型[(宽度)] [约束条件] [comment '字段说明'], 字段名2 类型[(宽度)] [约束条件] [comment '字段说明'], 字
3、重识MySQL-MySQL命令之DDLDMLDCL
暖风
09-06 805
MySQL DDLDMLDCL介绍
数据库四大语言(DDLDMLDCL,DQL):
虽千万里,吾往矣!
03-29 360
数据控制语言 – Data Control Language,指用于设置用户权限和控制事务语句。数据处理语言 - Data Manipulation Language,在数据库表中更新,增加和删除记录。如 update, insert, delete 不包含查询。数据定义语言 - Data Definition Language,用来定义数据库的对象,如数据表、视图、索引等。数据查询语言 – Data Query Language,数据表记录的查询。2、DML (数据操纵语言)3、DCL (数据控制语言)
MySQL数据库语言(DDL,DML,DCL,DQL)
MiraitowaL的博客
03-24 1411
上一篇讲到Mysql数据库的基本概念和它的分类,其中就讲到了数据库语言的四种分类,这四种语言是数据库管理系统(DBMS)中的常用语言,用于对数据库进行定义、操作、控制和查询。不同的DBMS可能有略微不同的语法和特性。这篇文章主要讲述数据库语言的分类及各自的用法。
MySql基础篇——DDL、DQL、DMLDCL
qq_59961910的博客
03-12 878
1.1 创建数据库CREATE DATABASE 数据库名;# 创建数据库CREATE DATABASE 数据库名 CHARACTER SET 字符串;# 创建数据库并指定字符集CREATE DATABASE IF NOT EXISTS 数据库名;# 如果数据库不存在则创建数据库1.2 修改数据库Alter DATABASE 数据库名 CHARACTER SET 字符集;11.3 删除数据库DROP DATABASE 数据库名;DROP DATABASE IF EXISTS 数据库名;1。
SQL命令大全 包含DDLDML、DQL、DCL所有命令(非常全面)
Wyj_1203的博客
04-01 2604
sql语句大全,包含对数据库、对表、对数据的各项操作,以及用户和权限设置
Oracle SQL基础教程:DML, DDL, DCL与TL操作详解
主要包括DML(Data Manipulation Language,数据操纵语言)、DDL(Data Definition Language,数据定义语言)、DCL(Data Control Language,数据控制语言)和TL(Transaction Language,事务语言)的基础操作。...
写文章

热门文章

  • linux之Ubuntu系列(五)用户管理、查看用户信息 终端命令 7376
  • labview 常见快捷键 7148
  • SQL多表查询的注意点,以及 join on 、where 执行的顺序 6050
  • SQL SERVER Trigger 触发器 6047
  • SQL SERVER 服务器登录名、数据库用户名、服务器角色、数据库角色、DENY、sp_addlogin ETC. 5874

最新评论

  • FTP、http 、tcp

    ha_lydms: 这篇博客让我看到了新的世界,感受到了新的思想。我觉得自己受益匪浅!

  • FTP、http 、tcp

    小王毕业啦: 博主的博文“FTP、http、tcp-CSDN博客”让我对这些网络协议有了全新的认识,文章内容详实,让我受益匪浅。博主的文字表达清晰,逻辑严谨,让我看到了博主的专业水平和研究精神。期待博主未来能够继续分享更多深入的技术文章,我会持续关注并学习。感谢博主的辛勤工作和分享,希望能够与博主共同进步!

  • WPF Binding对象、数据校验、数据转换、ValidationRules

    0仰望星空007: 博主文章写的十分细致,结构严谨。感谢博主分享

  • wpf自定义路由事件、TextBox 设置圆角

    0仰望星空007: 博主文章写的十分细致,结构严谨。感谢博主分享

  • WPF 布局的原理、Grid

    0仰望星空007: 博主文章写的十分细致,结构严谨。感谢博主分享

最新文章

  • CORE Kestrel Web、InProcess、OutOfProcess、启动配置
  • Net core 环境变量
  • net await 、 Task、 Async 不用async异步方法
2024
09月 6篇
08月 45篇
07月 43篇
06月 15篇
05月 29篇
04月 17篇
03月 15篇
02月 21篇
01月 10篇
2023年310篇
2022年367篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

天下网标王家居行业网站优化获客网站优化业务员威海荣成乳山文登网站优化推广胶州网站建设优化推广重庆专业网站优化平台优化公司如何优化网站的分析网站运营优化云浮公司网站关键词优化推广百度品牌广告网站优化时间表网站推广优化教程优化速卖通网站建议莲花网站推广优化德阳软件优化网站开封律师网站优化网站 优化 件鹤壁网站优化推广多少钱廊坊效果好的网站优化哪里不错系统网站优化工作网站seo优化内容网站seo优化效果好不好资阳网站优化方案网站优化合同封面营销网站怎么优化兰州网站整站优化有效深圳网站优化推广嵩明网站优化策划普陀区专业网站优化价格河南seo网站优化推荐巩义网站关键词优化公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化