DELETE与DROP在数据库中的使用方法和区别

DELETE与DROP在数据库中的使⽤⽅法和区别
乌苏里江以东DML(data manipulation language)数据操纵语⾔:就是我们最经常⽤到的 SELECT、UPDATE、INSERT、DELETE。 主要⽤来对数据库的数据进⾏⼀些操作。
DML 语句都是显式提交,执⾏完之后,处理的数据,都会放在回滚段中(除了 SELECT 语句),等待⽤户进⾏提交(COMMIT)或者回滚 (ROLLBACK),当⽤户执⾏ COMMIT / ROLLBACK 后,放在回滚段中的数据就会被删除
DDL(data definition language)数据库定义语⾔:DDL主要是⽤在定义或改变表的结构,数据类型,表之间的链接和约束等初始化⼯作上。⽐如:CREATE、ALTER、DROP等。
DDL 语句都是隐式提交。就是说,不⽤进⾏ COMMIT / ROLLBACK
DCL(Data Control Language)数据库控制语⾔:是⽤来设置或更改数据库⽤户或⾓⾊权限的语句,包括(grant,deny,revoke等)语句。这个⽐较少⽤到。
DELETE 语句
造纸产业发展政策DELETE 语句⽤于删除表中的⾏。
DELETE FROM 表名称 WHERE 列名称=值
删除某⾏
DELETE FROM users WHERE user_id ='2';
删除所有⾏
可以在不删除表的情况下删除所有的⾏。这意味着表的结构、属性和索引都是完整的:
DELETE FROM table_name
或者:
DELETE * FROM table_name
DROP 语句
通过使⽤ DROP 语句,可以轻松地删除索引、表和数据库。
nsisDROP TABLE 语句⽤于删除表(表的结构、属性以及索引也会被删除):
农民频道自娱自乐DROP TABLE 表名称
DROP DATABASE 语句⽤于删除数据库:
DROP DATABASE 数据库名称
如果我们仅仅需要除去表内的数据,但并不删除表本⾝,那么我们该如何做呢?请使⽤ TRUNCATE TABLE 命令(仅仅删除表格中的数据):
TRUNCATE TABLE 表名称
DELETE与DROP 区别
DELETE是DML,执⾏DELETE操作时,每次从表中删除⼀⾏,并且同时将该⾏的的删除操作记录在redo和undo表空间中以便进⾏回滚(rollback)和重做操作,但要注意表空间要⾜够⼤,需要⼿动提交(commit)操作才能⽣效,可以通过rollback撤消操作。DROP是DDL,会隐式提交,所以,不能回滚,不会触发触发器。nsis>v.i.c
DELETE可根据条件删除表中满⾜条件的数据,如果不指定where⼦句,那么删除表中所有记录。DROP语句删除表结构及所有数据,并将表所占⽤的空间全部释放。
DELETE语句不影响表所占⽤的extent,⾼⽔线(high watermark)保持原位置不变。DROP语句将删除表的结构所依赖的约束,触发器,索引,依赖于该表的存储过程/函数将保留,但是变为invalid状态。

本文发布于:2024-09-21 01:53:08,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/325899.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:删除   语句   数据   结构
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议