oracle清理数据的方法
一、删除一个用户下所有数据库对象
一种方法是删除这个用户然后重建,需要管理员操作:
drop user wangyi cascade; --删除用户
select * from dba_users where username = 'wangyi' --查询默认表空间
drop tablespace WANGYI_DTBS including contents and datafiles; --删除表空间
重建用户:
create user wangyi identified by wangyi;
grant create session, create view, create any index, imp_full_database to wangyi;
alter user wangyi default tablespace wangyi temporary tablespace temp;
alter user wangyi quota unlimited on wangyi;
二、清除整个表的内容
delete from 表名;
truncate table 表名;
delete和truncate的区别:
delete删除的数据可以恢复,truncate不能恢复
delete高水位线不会下降,truncate高水位线会下降(释放表空间)
三、删除表
drop table 表名;
四、回收站
oracle 10g开始,表删除后不是直接删除而是去了回收站。
删除回收站中指定表
purge table 表名;
清空回收站
purge recyclebin;
直接删除
drop table 表名 purge;
就不会进回收站直接删除。
另一种文章
删除表(记录和结构)的语名delete ―――― truncate ―――― drop
DELETE (删除数据表里记录的语句)
DELETE FROM表名 WHERE 条件;
注意:删除记录并不能释放ORACLE里被占用的数据块表空间. 它只把那些被删除的数据块标成unused.
如果确实要删除一个大表里的全部记录, 可以用 TRUNCATE 命令, 它可以释放占用的数据块表空间
TRUNCATE TABLE 表名;
此操作不可回退.
相同点
truncate和不带where子句的delete, 以及drop都会删除表内的数据
注意:
1.这里说的delete是指不带where子句的delete语句
2.在存储过程中默认是不允许执行truncate table tablename操作的,所以要使用
execute immediate 'truncate table tablename';
CREATE OR REPLACE PROCEDURE proc_delete_all_data
IS
BEGIN
execute immediate 'truncate table T_FLOW_ACCOUNT'
execute immediate 'truncate table T_FLOW_MERCHANT'
END proc_delete_all_data;
不同点:
1. truncate和 delete只删除数据不删除表的结构(定义)
drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态.
2.delete语句是dml,这个操作会放到rollback segement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发.
truncate,drop是ddl, 操作立即生效,原数据不放到rollback segment中,不能回滚. 操作不触发trigger.
3.delete语句不影响表所占用的extent, 高水线(high watermark)保持原位置不动
显然drop语句将表所占用的空间全部释放
truncate 语句缺省情况下见空间释放到 minextents个 extent,除非使用reuse storage; truncate会将高水线复位(回到最开始).
4.速度,一般来说: drop>; truncate >; delete
5.安全性:小心使用drop 和truncate,尤其没有备份的时候.否则哭都来不及
使用上,想删除部分数据行用delete,注意带上where子句. 回滚段要足够大.
想删除表,当然用drop
想保留表而将所有数据删除. 如果和事务无关,用truncate即可. 如果和事务有关,或者想触发trigger,还是用delete.
如果是整理表内部的碎片,可以用truncate跟上reuse stroage,再重新导入/插入数据
oracle中删除表中的一列语句
alter table 表名 drop colum 列名
电神魔傀2街机免费版 官方版v1.2.1
下载三国战纪2手游腾讯渠道服 安卓版v2.41.0.0
下载三国战纪2手游抖音渠道服 安卓版v2.41.0.0
下载三国战纪2折扣服 安卓版v2.41.0.0
下载叫我大掌柜小米版 安卓版v7.4.4
叫我大掌柜小米版是这款模拟经营类手游的渠道服版本,在此版本中
cooking fever正版 安卓最新版v23.0.2
cooking fever正版是一款非常好玩的模拟经营类手游
咖啡厅的生活故事 最新版v1.7
咖啡厅的生活故事是一款模拟经营游戏,玩家们在游戏中可以经营一
迅猛龙模拟器金币不减反增版 v1.1.8
迅猛龙模拟器无限金币版是一款动物模拟类游戏,玩家们将在游戏中
泽塔奥特曼升华器免广告版 v1.4
泽塔奥特曼升华器去广告版是游戏的破解版本,在该版本中为玩家去