我想删除表中的所有数据行,但不删除表。 delete语句有一个where子句,所以我必须逐行给出每一行。是否还有其他方法可以删除表中的整个数据行?
这是Oracle
并使用sqlplus
答案 0 :(得分:5)
您可以尝试: TRUNCATE TABLE tableName
答案 1 :(得分:3)
Truncate Table tablename
http://www.orafaq.com/faq/difference_between_truncate_delete_and_drop_commands
您也可以删除delete from tablename
的所有记录,但截断速度要快得多
答案 2 :(得分:2)
最好删除约束,然后使用Truncate命令,在删除数据后再次应用约束。
答案 3 :(得分:1)
尝试使用FORALL批量删除。其中,不是一次删除一行,而是可以在单个删除事务中删除整个批量。