hr@ORCL> select * from t;
ID TEST
---------- ----------
1 g
3 d
5 t
hr@ORCL> commit;
Commit complete.
hr@ORCL> delete from t where id=5;
1 row deleted.
hr@ORCL> select * from t;
ID TEST
---------- ----------
1 g
3 d
hr@ORCL> rollback;
Rollback complete.
hr@ORCL> select * from t;
ID TEST
---------- ----------
1 g
3 d
5 tTruncate command removes all the data from table and drops all integrity constraints it's an DDL Statement and resets the HWM but you can't rollback a tables data after truncate, As such, TRUCATE is faster and doesn't use as much undo space as a DELETE.We can not use undo space and one more thing truncate doesn' remove selective rows it can only removes the full tables data.truncate leaves the database structure ad is a good tool to reset HWM.but a dangerous tool for database security.
hr@ORCL> select * from t;
ID TEST
---------- ----------
1 g
3 d
5 t
hr@ORCL> truncate table t;
Table truncated.
hr@ORCL> select * from t;
no rows selected
hr@ORCL> rollback;
Rollback complete.
hr@ORCL> select * from t;
no rows selected
The drop command means delete the table from the database. The drop command is a data definition language (DDL) command and this is a table oriented command. We can delete all rows and also the table definition, indexes, privileges,triggers and all storage
parameters. The rollback is not possible. We can not use undo space。
hr@ORCL> drop table t;
Table dropped.
hr@ORCL> select * from t;
select * from t
*
ERROR at line 1:
ORA-00942: table or view does not exist
hr@ORCL> rollback;
Rollback complete.
hr@ORCL> select * from t;
select * from t
*
ERROR at line 1:
ORA-00942: table or view does not exist
In sum,DROP and TRUNCATE are DDL commands, whereas DELETE is a DML command. Therefore DELETE operations can be rolled back (undone), while DROP and TRUNCATE operations cannot be rolled back.From Oracle 10g a table can be "undropped". Example:
hr@ORCL> flashback table t to before drop;
Flashback complete.
本文详细解析了数据库操作中的DELETE、TRUNCATE和DROP命令的区别及使用场景。DELETE作为DML命令可以撤销并保留索引,而TRUNCATE作为DDL命令能快速清空表且不可撤销,DROP则用于完全移除表及其所有相关资源。
2428

被折叠的 条评论
为什么被折叠?



