الانتقال إلى المحتوى

مشلكة مع الباكج DBMS_JOBS


m_nasef

Recommended Posts

اعمل على نسخة 9i الاصدار الأول .. واريد بعد مرور كل ساعة يتم اضافة واحد الى العمود X ...
حيث الجدول tb به صف واحد ...
ولقد قمت بعمل ...
VARIABLE jobno NUMBER
BEGIN
DBMS_JOBS(:jobno,
BEGIN UPDATE TB SET X = X + 1 ; COMMIT; END; ,
SYSDATE,
SYSDATE + 1/24 );
COMMIT;
END;
/
PRINT jobno
----------------------------------------------------------
وقمت بعمل ..
EXECUTE DBMS_JOB.RUN(1);
وتم تنفيذ الاجراء ..
-------------------------------
والوظيفة رقم 1 .. موجودة فى user_jobs ...
وبعد كل ذلك لا يتم تنفيذ هذا الاجراء ...
-------------------------------

رابط هذا التعليق
شارك

فى الملف init.ora
الموجود فى مجلد oracle
ابحث عن القيمة job_queue_processes
غالبا سوف تكون job_queue_processes=0
او غير موجوده اصلا عدلها الى القيمة 10 مثلا او ضيفها كما يلى :-
job_queue_processes=10

وجرب وشوف كده

رابط هذا التعليق
شارك

ويفضل في هذا الباكيج أن يستخدم كالتالي :

create or replace procedure submit_job is
begin
 dbms_output.put_line('submitting job...');
end submit_job;



set serveroutput on
declare
                n_job binary_integer;
 begin
   dbms_job.submit(job => n_job,
                   what => 'begin submit_job; end;',
                  next_date => sysdate );
   commit;
   dbms_output.put_line(n_job);
 end;



:D

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية