Oracle数据库truncate、delete、drop语句区别
truncate与delete是删除表内记录,不删除表空间。drop是删除表空间。
一般为delete from tablename where 条件;
不带where+条件为全部删除等同于truncate,但执行效率比truncate慢。
truncate默认所有的表内容都删除,无法回退,删除速度比delete快。
drop语句删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态.。
drop table默认将表删除到回收站内,恢复语句为:flashback table tablename to before drop;
彻底删除语句为:drop table tablename purge;
清空当前用户回收站语句为:purge recyclebin;
清除回收站内某表记录:purge table tablename;
删除表中的一列:alter table tablename drop column 列;
详细请参考http://blog.csdn.net/zzyoucan/article/details/11096503
如果要对大量表执行操作,同时放到一个SQL窗口执行会卡死的,要开一个command窗口执行。
command会一行一行执行的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了