Oracle 删除表恢复】的更多相关文章

这句是查询Oracle中回收站的数据 select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin; 恢复: SQL>flashback table test_drop to before drop;或SQL>flashback table "BIN$b+XkkO1RS5K10uKo9BfmuA==$0" to before drop;…
这篇文章主要介绍了Oracle删除表.字段之前判断表.字段是否存在的相关资料,需要的朋友可以参考下 在Oracle中若删除一个不存在的表,如 “DROP TABLE tableName”,则会提示: ORA-00942:表或视图不存在 若在程序中执行该语句则会报异常,这就需要我们在删除表前先判断该表是否存在,若存在则删除. ? 1 2 3 4 5 6 7 8 9 10 11 DECLARE num NUMBER; BEGIN SELECT COUNT(1) INTO num FROM USER_…
oracle中的sys用户(修改密码) (2011-07-01 09:18:11) 转载▼ 标签: it 分类: oracle 概念: SYS用户是Oracle中权限最高的用户,而SYSTEM是一个用于数据库管理的用户.在数据库安装完之后,应立即修改SYS,SYSTEM这两个用户的口令,以保证数据库的安全. 可以用三种方法修改口令:sqlplus / as sysdba;1.sql> alter user sys identified by 123456 2.sql>grant connect…
1.删除表结构和表数据 drop table 表名 [purge]  purge表示不放入回收站 2.删除表数据 delete from 表名 [where ...] 特点:高水位线不降:记录日志,速度慢,可以恢复(savepoint test; rollback to test;) 3.删除表数据 truncate table 表名 不记录日志,高水位线下降 如果我们在drop 表的时候没有添加 purge, 那么这个表的结构和数据不会被真正的删除,而是被oracle 放进了回收站. 查询回收…
1.查看一个表所占的空间大小:SELECT bytes/1024/1024 ||'MB' TABLE_SIZE ,u.* FROM USER_SEGMENTS U WHERE U.SEGMENT_NAME='JK_TEST';2.查看一个表空间所占的实际大小:SELECT SUM(BYTES) / 1024 / 1024 ||'MB' FROM USER_SEGMENTS U  WHERE TABLESPACE_NAME = 'DATA01';3.查看一个表空间对应的数据文件:SELECT *…
某一张表被应用软件里误操作把数据都清空了,现在想恢复到清空之间,比如2013年8月13日14点以前,应该怎样操作? 通过这个问题可以引发一系列的知识点串联. 1.如果开启闪回可以使用闪回表. 怎样查看我的数据库有没有开启flashback flashback database要求数据库必须处于归档模式,且闪回之后必须使用resetlogs打开数据库 查看数据库的归档模式及闪回是否启用 SQL> select log_mode,open_mode,flashback_on from v$datab…
truncate恢复表 1.创建测试用表 conn elan/elan create table haha as select * from dba_users; 2.查询表数据 ) from haha;   ) ----------      3.清空创建的表 truncate table haha; ) from haha;   ) ----------      查询已清空 4.测试恢复过程 (sys)将附件文件保存到oracle目录下,名字随意修改truncate_sql.sql  的脚…
truncate table tablename DROP STORAGE; drop 执行drop table xx 语句drop后的表被放在回收站(user_recyclebin)里,而不是直接删除掉.这样,回收站里的表信息就可以被恢复,或彻底清除.通过查询回收站user_recyclebin获取被删除的表信息,然后使用语句flashback table <user_recyclebin.object_name or user_recyclebin.original_name> to be…
    truncate ddl语句,删除表中数据,速度要比delete快:且所有自增字段重新开始计数:删除数据保留表结构:删除的数据不进入rollback segment,无法恢复.例: truncate table emp_tmp;     drop    ddl语句,删除和该表相关的所有信息,包括表结构.数据.     delete    dml语句,删除表中数据,但是并不删除表结构.…
删除表(记录和结构)的语名delete   ————   truncate      ———— drop DELETE (删除数据表里记录的语句) DELETE FROM表名 WHERE 条件; 注意:删除记录并不能释放ORACLE里被占用的数据块表空间. 它只把那些被删除的数据块标成unused. 如果确实要删除一个大表里的全部记录, 可以用 TRUNCATE 命令, 它可以释放占用的数据块表空间 TRUNCATE TABLE 表名; 此操作不可回退. 相同点 truncate和不带where…
1. 删除oracle表中的所有数据而不删除表: 语法: TRUNCATE TABLE table_name; 使用这条语句只是删除表中的全部数据,不是删除表,这种方式也叫做截断表,这种方式比使用delete删除数据的速度要快很多: SQL> desc new_userinfo; 名称 是否为空? 类型 ----------------------------------------- -------- ---------------------------- ID ) USERNAME ) P…
告诉大家,我喜欢通过toad for oralce来实现对oracle数据库的操作. 1.首先通过数据库管理员用户以SYSDBA身份登录.比如使用sys用户去登录 2.查看和记录待删除表空间所在的物理文件及路径 3.通过命令删除表空间. DROP TABLESPACE 您的表空间名 INCLUDING CONTENTS AND DATAFILES; COMMIT; 以上命令要在sys用户下去执行,以上命令执行后要生效需要再执行commit命令. 此时,已经把表空间从数据库删除了,但是被删除表空间…
这篇文章主要介绍了oracle表增加字段.删除表字段修改表字段的使用方法,大家参考使用吧   添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….); 删除字段的语法:alter table tablen…
转自:https://blog.csdn.net/qq_37840993/article/details/82490787 平时写sql中我们都会用到删除语句,而平时删除表数据的时候我们经常会用到两种方式: 在oracle中,truncate.delete都可以删除表数据,具体的区别以及sql语法如下: truncate table [表名]; delete from [表名]; delete与truncate的区别:delete:会产生rollback,如果删除大数据量的表速度会很慢,而且同时…
drop table books;的指令会将表放到回收站里, 用 flashback table "BIN$1Oiy3qm/QJubov1BwBUOgw==$0" to before drop; 就能恢复. 删除表: drop table books purge;是绕过回收站,彻底删除 建议你先 purge recyclebin; 清除当前用户的回收站,不会影响其他用户的回收站 或者 purge table 表名: 清除回收站内指定的表…
oracle 11g版本,创建数据库表空间,默认单个数据文件最大为32G,如果数据文件大于32G,可以增加数据文件. --删除空的表空间,但是不包含物理文件 drop tablespace tablespace_name;--删除非空表空间,但是不包含物理文件drop tablespace tablespace_name including contents;--删除空表空间,包含物理文件drop tablespace tablespace_name including datafiles;--…
Oracle数据库删除表中的重复数据,只保留其中的一条,以两个字段为例,提供两种方法 ①.直接delete重复的数据 delete from table_name t1 where (t1.col1, t1.col2) in (select col1, col2 from table_name group by col1, col2 having count(*) > 1) and t1.rowid in (select min(rowid) from table_name group by c…
问题1:删除表空间期间遭遇报错 ORA-29857 问题2:删除表空间期间遭遇 ORA-02429 问题3:表空间删除完毕,主机磁盘空间不释放 问题1:删除表空间期间遭遇报错 ORA-29857 删除表空间语句:DROP TABLESPACE SAC INCLUDING CONTENTS AND DATAFILES; 根据MOS文档: How To Resolve ORA-29857 During a Drop Tablespace although No Domain Index exists…
若要彻底删除表,则使用语句:drop table <table_name> purge; 清除回收站里的信息 清除指定表:purge table <table_name>; 清除当前用户的回收站:purge recyclebin; 清除所有用户的回收站:purge dba_recyclebin; 不放入回收站,直接删除则是:drop table xx purge;…
删除表分区(drop partition)    删除表分区包含两种操作,分别是:   Ø 删除分区:alter table [tbname] drop partition [ptname] UPDATE GLOBAL INDEXES  ; Ø 删除子分区:alter table [tbname] drop subpartition [ptname]  UPDATE GLOBAL INDEXES;   除hash分区和hash子分区外,其它的分区格式都可以支持这项操作.   例如,删除分区: J…
1,完全删除表: drop table 表名 purge; 2,删除表后永久删除-回收站表 purge table 表名: 3,清空垃圾回收站 purge recyclebin; 4, 查询所有此类表 select * from recyclebin where type='table'; 5, 用来闪回被删除的表 flashback table 表名 to before drop; 6, 查看是否开启了闪回功能: select flashback_on from v$database;…
步骤一: 删除tablespace(登录对应用户删除表空间) DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES; 步骤二: 删除user(登录系统用户删除该用户) drop user ×× cascade…
第一步,删除表空间前如果忘记表空间名称和用户名,可以通过以下命令进行查询. ---查找用户select * from dba_users; --查找工作空间的路径select * from dba_data_files; 第二步,删除命令 --删除非空表空间,包含物理文件drop tablespace tablespace_name including contents and datafiles; --举例 表空间drop tablespace BBCJ1_DATA including con…
由于undo表空间设置了自动增长,导致替换了好几个undo表空间,就想把原先的undo表空间删掉腾出空间 但删的时候报错 SQL> drop tablespace undotbs1 including contents and datafiles;drop tablespace undotbs1 including contents and datafiles*ERROR at line 1:ORA-01548: active rollback segment '_SYSSMU1_3780397…
用于直接drop掉表的情况(plsql developer直接删掉表就是drop操作) 查删除的表select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin;同时查出的有表的主键.索引等等,只需闪回表,其他的也随之恢复 闪回flashback table tablename to before drop;…
原文:http://space.itpub.net/40239/viewspace-365948 OMF和非OMF管理的数据文件在DROP TABLESPACE时是否会自动删除,做了测试: SQL> alter system set db_create_file_dest='/oradata/data/standby' scope=both; System altered. SQL> show parameter db_create NAME                          …
发现误删除时需要及时处理,速度要快,姿势要帅.晚了就恢复不了额 1.查询时间 以确保恢复到某个时间点 select SQL_TEXT, LAST_ACTIVE_TIME from v$sqlarea where LAST_ACTIVE_TIME > to_date('删除数据的大约时间', 'yyyymmdd hh24:mi:ss') and SQL_TEXT like '%表名%'; --此处请用like!!! 2.插入误删除的数据 INSERT INTO 表名 select * from 表…
删除无名主键语句: SELECT * FROM USER_CONS_COLUMNS WHERE TABLE_NAME = '表名'; ALTER TABLE 表名 DROP CONSTRAINT 主键名称; 上面语句需要手动,如何自动执行?看下面: CREATE OR REPLACE FUNCTION DEL_TABLE_CONSTRAINT (tb_name VARCHAR2, field_name VARCHAR2) RETURN NUMBER IS con_count NUMBER; co…
SELECT 'DROP TABLE ' || TABLE_NAME || ' CASCADE CONSTRAINTS' V_NAME FROM DBA_TABLES WHERE TABLESPACE_NAME = 'USERS'; 按照表空间名查询所有包含的表,并根据表名拼接删除语句. 执行上面查询语句生成的语句,即可删除所有表.…
表明明存在,但是删除时却报错:表或视图不存在. 可能的原因之一是表名包含了小写,可以用双引号包含表名通过drop命令来删除, 如下所示: drop table "tmp_ST" ; drop table "tPeople";…