create database ord
    user sys identified by ds88dkw2
    user system identified by md78s233
    sysaux datafile '/u02/oradata/ord/sysaux001.dbf' size 1g
    default temporary tablespace temp01
        tempfile '/u03/oradata/ord/temp001.dbf' size 150m
    undo tablespace undotbs01
        datafile '/u01/oradata/ord/undo001.dbf' size 500m;

create undo tablespace undotbs02
    datafile '/u01/oracle/rbdb1/undo002.dbf'
    size 500m reuse autoextend on;


begin
    dbms_resource_manager.create_pending_area();
    dbms_resource_manager.update_plan_directive(
        plan => 'system_plan',
        group_or_subplan => 'low_group',
        new_comment => 'Limit przestrzeni wycofania dla grup o niskim priorytecie',
        new_undo_pool => 50000);
    dbms_resource_manager.validate_pending_area();
    dbms_resource_manager.submit_pending_area();
end;


declare
    -- Kursor przechowujcy usunite wiersze
    cursor del_emp is
        select * from employees where employee_id in (195, 196);
    del_emp_rec del_emp%rowtype; -- wszystkie kolumny wiersza pracownika
begin
    -- Otwarcie kursora  wci w trybie Flashback
    open del_emp;
    -- Wyczenie Flashback, aby za pomoc DML umieci wiersze
    -- z powrotem w tabeli EMPLOYEES
    dbms_flashback.disable;
    loop
        fetch del_emp into del_emp_rec;
        exit when del_emp%notfound;
        insert into employees values del_emp_rec;
    end loop;
    commit;
    close del_emp;
end; -- Koniec anonimowej procedury PL/SQL


alter database archivelog;

alter system archive log current;
alter database add supplemental log data;


alter database open;

FLASHBACK TABLE HR.EMPLOYEES, HR.JOBS, HR.DEPARTMENTS TO TIMESTAMP to_timestamp('2007-08-05 20:10:47', 'YYYY-MM-DD HH24:MI:SS')

