Heim  >  Artikel  >  Datenbank  >  Was ist der Befehl zum Löschen von Daten in Oracle?

Was ist der Befehl zum Löschen von Daten in Oracle?

WBOY
WBOYOriginal
2022-06-10 15:55:5112919Durchsuche

oracle删除数据的命令:1、delete命令,该命令用于删除表中的数据,语法为“delete from 表名 where 条件”;2、truncate命令,该命令也可用于删除数据,能够直接将表中的数据一次删除,语法为“truncate table 表名”。

Was ist der Befehl zum Löschen von Daten in Oracle?

本教程操作环境:windows10系统、Oracle 12c版、Dell G3电脑。

oracle删除数据的命令是什么

Oracle删除(delete)

delete命令

Oracle中对表数据的删除是利用delete命令进行的。

delete命令结构:

delete from 表名 where 条件

命令解析:

1、当delete from不加where条件时,表示是把表中的数据全部删除。

案例1、删除学生信息表(stuinfo)中学生“张三”的数据:

delete  from stuinfo t where t.stuname='张三';

结果如下:

Was ist der Befehl zum Löschen von Daten in Oracle?

truncate命令

truncate命令也是数据删除命令,他是直接把Oracle表数据一次删除的命令,truncate命令是一个DDL命令,不同于delete是DML命令。

truncate命令结构:

truncate table 表名;

案例2、删除学生信息备份表(stuinfo_2018):

truncate table stuinfo_2018;

结果如下:

Was ist der Befehl zum Löschen von Daten in Oracle?

Oracle删除(delete)

truncate和delete都能删除表中的数据,他们的区别:

1、TRUNCATE 是 DDL 命令,命令执行完就提交,删除的数据不能恢复; DELETE 命令是 DML 命令,命令执行完需提交后才能生效,删除后的数据可以通过日志文件恢复。

2、如果表中的数据量较大,TRUNCATE的速度比DELETE速度快很多。

3、truncate删除将重新设置表索引的初始大小,而delete不能。

4、delete能够触发表上相关的delete触发器,而truncate则不会触发。

5、delete删除的原理是一次一条从表中删除数据,并将删除操作当做事物记录在数据库的日志当中,以便进行数据回滚。而truncate是一次性进行数据页的删除,因此执行速度快,但是不能回滚。

总结:truncate命令是属于DDL命令,一次性删除表中所有数据,并且数据不能恢复,在实际开发过程当中truncate命令慎用。

推荐教程:《Oracle视频教程

Das obige ist der detaillierte Inhalt vonWas ist der Befehl zum Löschen von Daten in Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn