وهي ميزة جديدة في اوركل من اول 9i و 10g ، وهي تتيح لك عمل استعلام من قاعدة البيانات من تاريخ سايق ، على سبيل المثال تريد الاستعلام من جدول معين ولاكن ليس من البيانات الحالية يل التي كانت موجودة قبل نصف ساعة من الان ، وحسب حد علمي فهي غير موجودة في اي قاعدة بيانات غير اوراكل ،،، واترككم مع المثال التالي اللذي يوضح ذلك :
اولا نقوم بتشغيل خاصية time في sql*plus
ولنقم بالاستعلام في جدول emp عن الموضف scott
الان نقوم بأي عملية تحديث للبيانات
والان نقوم بعملية الاستعلام في الوقت اللذي يسبق عملية التحديث update
اولا نقوم بتشغيل خاصية time في sql*plus
SQL> set time on
ولنقم بالاستعلام في جدول emp عن الموضف scott
13:48:01 SQL> select * from scott.emp where empno=7788; EMPNO ENAME JOB MGR HIREDATE SAL DEPTNO ---------- ---------- --------- ---------- --------------- ---------- ---------- 7788 SCOTT ANALYST 7566 19-APR-87 3000 20
الان نقوم بأي عملية تحديث للبيانات
13:48:24 SQL> update scott.emp 13:48:36 2 set sal=1000 where empno=7788; 1 row updated. 13:48:36 SQL> select * from scott.emp where empno=7788; EMPNO ENAME JOB MGR HIREDATE SAL DEPTNO ---------- ---------- --------- ---------- --------------- ---------- ---------- -- 7788 SCOTT ANALYST 7566 19-APR-87 1000 20
والان نقوم بعملية الاستعلام في الوقت اللذي يسبق عملية التحديث update
13:54:31 SQL> 1 select * from scott.emp as of timestamp 13:54:38 2 to_timestamp('2004-11-24 13:48:24','yyyy-mm-dd hh24:mi:ss') 13:54:44 3* where empno=7788 EMPNO ENAME JOB MGR HIREDATE SAL DEPTNO ---------- ---------- --------- ---------- --------------- ---------- ---------- - 7788 SCOTT ANALYST 7566 19-APR-87 3000 20
تعليقات
إرسال تعليق