Está en la página 1de 3

-- para poder recuperar las tablas borradas

alter session set recyclebin=on;


--consultar a la papelera de oracle
select*from RECYCLEBIN;
--creamos un usuario
create user ACADEMICO identified by 1234;
--le otorgamos privilegios
grant DBA to ACADEMICO
--conectamos a la base de datos como academicos
alter session set "_ORACLE_Script"=true;

create table notas (id integer, N1 integer, N2 integer);


insert into Notas values (1,12,15);
insert into Notas values (2,18,20);
insert into Notas values (3,13,15);
--para confirmar una operacion
commit;
--reviamos la tabla
select*from Notas;
--eliminamos la tabla
drop table Notas;
--seleccionamos la tabla eliminada con el from
select*from "BIN$o9kNFOr2Sk2dIadohtebQQ==$0";
--recuperamos tablas
flashback table Notas to Before Drop;
--creamos nueva tabla pero con los mismos datos. pero luego de borrarlo ya no
podemos recuperarlo si no hemos activado el comando.
create table Notas_New as select *from Notas
select*from Notas_New
drop table Notas_New;

-------------MANEJO DE " TABlAS CREADAS CON UNA TABLa---------------------


create table Calificaciones (id integer, N1 integer, N2 integer);
insert into Calificaciones values (4,13,16);
insert into Calificaciones values (5,19,21);
insert into Calificaciones values (6,14,16);

select*from Calificaciones;

--creamos la tabla notas con los datos de calificaciones


create table Notas as select*from Calificaciones;

--borramos tablas notas--


drop table Notas

--sleccionamos la tabla que queremos recuperar--


select*from "BIN$uxY9hBl1T+Scvd5uvHtqZg==$0" ;

--recuperamos la tabla pero le cmbiamos el nombre para que no se borre la anterior


debido al mismo nombre--
flashback table "BIN$uxY9hBl1T+Scvd5uvHtqZg==$0" to Before Drop
rename to Notas_01;

--rebisamos que tablas se pueden recuperar--


select*from RECYCLEBIN;

--sleccionamos la tabla que queremos recuperar--


select*from"BIN$yQgjO+80RqGxtiFos+Kb8A==$0";
--recuperamos la tabla pero le cmbiamos el nombre para que no se borre la anterior
debido al mismo nombre--
flashback table "BIN$yQgjO+80RqGxtiFos+Kb8A==$0" to Before Drop
rename to Notas_02;

--rebisamos que tablas se pueden recuperar--


select*from RECYCLEBIN;

select*from Notas_01;
select*from Notas_02;

--Retencion de tiempo --
select*from V$PARAMETER;

--todo esta configurdo en segundos, tienes que configurarlo para el tiempo que
quieras. 2348--
--3600=1h
--86400=24h
--1296000=15d
alter system set undo_retention = 1296000 scope = both;
--filtramos el valor con nombre "undo"--
select*from V$PARAMETER where name like '%undo%' ;

--sale el dia
select sysdate from dual;
--dia y hora
select SYSTIMESTAMP from dual;

create table Persona (Datos char(50));


--31/12/19 12:31:24,763000000 -05:00

insert into Persona Values ('Miguel');


commit;

--31/12/19 12:32:48,572000000 -05:00

insert into Persona Values('Luis');


Commit;
--31/12/19 12:33:40,252000000 -05:00

insert into Persona Values('Josue');


Commit;
--31/12/19 12:34:04,942000000 -05:00

select*from Persona;

--arroja el codigo para visiualizar lo que contenia la tabla-- no se puede


recuperar ni mostrar si se elimino la tabla, solo si se elimino la fila.--
select current_SCN from V$Database;
--te muestra el codigo y el dia fecha y hora--
select current_scn,to_char(SYSTIMESTAMP,'YYYY-MM-DD HH24:MI:SS')From V$Database;

drop Table Persona;


2897915
--si no hemos eliminado la tabla podemos ver todo lo que contenia la fila
eliminada--
select*from Persona as of scn 2897915;
select*from Persona;
--consultamos la papelera de reciclaje--
select*from RECYCLEBIN;

También podría gustarte