Oracle PL/SQL/System Packages/dbms lock

Материал из SQL эксперт
Перейти к: навигация, поиск

execute dbms_lock.sleep(42)

 
SQL>
SQL> create table emp
  2  ( empno      NUMBER(4)    constraint E_PK primary key
  3  , ename      VARCHAR2(8)
  4  , init       VARCHAR2(5)
  5  , job        VARCHAR2(8)
  6  , mgr        NUMBER(4)
  7  , bdate      DATE
  8  , sal        NUMBER(6,2)
  9  , comm       NUMBER(6,2)
 10  , deptno     NUMBER(2)    default 10
 11  ) ;
Table created.
SQL> insert into emp values(1,"Tom","N",   "TRAINER", 13,date "1965-12-17",  800 , NULL,  20);
1 row created.
SQL> insert into emp values(2,"Jack","JAM", "Tester",6,date "1961-02-20",  1600, 300,   30);
1 row created.
SQL> insert into emp values(3,"Wil","TF" ,  "Tester",6,date "1962-02-22",  1250, 500,   30);
1 row created.
SQL> insert into emp values(4,"Jane","JM",  "Designer", 9,date "1967-04-02",  2975, NULL,  20);
1 row created.
SQL> insert into emp values(5,"Mary","P",  "Tester",6,date "1956-09-28",  1250, 1400,  30);
1 row created.
SQL> insert into emp values(6,"Black","R",   "Designer", 9,date "1963-11-01",  2850, NULL,  30);
1 row created.
SQL> insert into emp values(7,"Chris","AB",  "Designer", 9,date "1965-06-09",  2450, NULL,  10);
1 row created.
SQL> insert into emp values(8,"Smart","SCJ", "TRAINER", 4,date "1959-11-26",  3000, NULL,  20);
1 row created.
SQL> insert into emp values(9,"Peter","CC",   "Designer",NULL,date "1952-11-17",  5000, NULL,  10);
1 row created.
SQL> insert into emp values(10,"Take","JJ", "Tester",6,date "1968-09-28",  1500, 0,     30);
1 row created.
SQL> insert into emp values(11,"Ana","AA",  "TRAINER", 8,date "1966-12-30",  1100, NULL,  20);
1 row created.
SQL> insert into emp values(12,"Jane","R",   "Manager",   6,date "1969-12-03",  800 , NULL,  30);
1 row created.
SQL> insert into emp values(13,"Fake","MG",   "TRAINER", 4,date "1959-02-13",  3000, NULL,  20);
1 row created.
SQL> insert into emp values(14,"Mike","TJA","Manager",   7,date "1962-01-23",  1300, NULL,  10);
1 row created.
SQL>
SQL> col versions_starttime format a21
SQL> col versions_endtime   format a21
SQL>
SQL> create table e as select * from emp;
Table created.
SQL> alter session set NLS_TIMESTAMP_FORMAT="DD-MON-YYYY HH24:MI:SS.FF3";
Session altered.
SQL> select localtimestamp as table_created  from dual;
TABLE_CREATED
---------------------------------------------------------------------------
26-OKT-2009 10:08:54.245
SQL>
SQL> execute dbms_lock.sleep(42);
PL/SQL procedure successfully completed.
SQL> update e
  2  set    sal = sal + 10;
14 rows updated.
SQL> commit;
Commit complete.
SQL> select localtimestamp as after_update_1 from dual;
AFTER_UPDATE_1
---------------------------------------------------------------------------
26-OKT-2009 10:09:36.494
SQL>
SQL> execute dbms_lock.sleep(16);
PL/SQL procedure successfully completed.
SQL> update e
  2  set    sal = sal - 20
  3  where  deptno = 10;
3 rows updated.
SQL> commit;
Commit complete.
SQL> select localtimestamp as after_update_2 from dual;
AFTER_UPDATE_2
---------------------------------------------------------------------------
26-OKT-2009 10:09:52.657
SQL>
SQL> execute dbms_lock.sleep(42);
PL/SQL procedure successfully completed.
SQL> delete from e
  2  where  deptno <= 20;
8 rows deleted.
SQL> commit;
Commit complete.
SQL> select localtimestamp now               from dual;
NOW
---------------------------------------------------------------------------
26-OKT-2009 10:10:34.850
SQL>
SQL>
SQL> drop table emp;
Table dropped.