بتاريخ: 28 سبتمبر 200619 سنة comment_79669 السلام عليكم ورحمة الله وبركاته وكل عام وانتم بخير بمناسبة شهر رمضان الكريمسؤال/هل يمكن عمل وظيفه معينه تقوم بإجراء عمليات معينه فى وقت دورى احدده لهاقرأت فى هذا الموضوع فوجدت باكج اسمهاjob_queueولكن لم استطع استخدامها المطلوب مثلا : اريد ان اعمل host('sqlldr scott/tiger@mybase control=c:\ctl.ctl parfile=c:\par.txtاريد ان ينفذ هذا السطر او هذا الامر يوميا الساعه 3 ظهرا دون تشغيل الفورم اى يعمل هذا الكود من خلال الداتا بيز تقديم بلاغ
بتاريخ: 29 سبتمبر 200619 سنة comment_79713 السلام عليكملم اقم بتجربة الامر من قبل ولكن تخيلى للامر انك ستعمل sysdate على مستوى الفورم انه اذا كانت السيس دات بيساوى الساعة 3 كول بروسيدير او ناى بروسيدير معين .انا لم افكر فى الامر سوى لحظات ولكن سأدقق الامر فى سؤالك وارد عليك اذا شاء الرحمن .ميجا تقديم بلاغ
بتاريخ: 29 سبتمبر 200619 سنة comment_79730 السلام عليكم ورحمة الله وبركاتةطيب هى ال data base هتفتح ازاى من غير الفورم ما تفتح يعنى المفروض فى تريجر اسمه on_logon بيكون فية ال user_name , password علشان ال data base تفتح ولا ايه؟ تقديم بلاغ
بتاريخ: 29 سبتمبر 200619 سنة comment_79733 ماشي كلامك ده مظبوط يا محمد بس ده فى حالة ان قاعدة الداتا بيز ممكن تغلق يعنى "turn off" يعنى جهاز كمبيوتر عادى لكن هى من كلمها واضح ان ده جهاز سرفر وتنفيذ التريجر لن يحتاج لوجود شخص بل تلقائي . الشاهد فى كلامى ان السيس دات ممكن توضع مع الفورم اللى هتنفذ عليه التريجر وشكراميجا تقديم بلاغ
بتاريخ: 29 سبتمبر 200619 سنة comment_79750 سلام عليكمممكن تعملى data base trigger يتنفذ فى الوقت اللى انتى عايزاة تقديم بلاغ
بتاريخ: 30 سبتمبر 200619 سنة comment_79776 السلام عليكم و رحمة الله و بركاتةيا محمد انت غلطان لأن database trigger بيشتغل على الـ server sideمش على الclient sideو كمان امر ال host ساعتها حايحصل لية fire على السيرفرو الله تعالى أعلم تقديم بلاغ
بتاريخ: 30 سبتمبر 200619 سنة comment_79812 الحل السهل من علي ويندوز هوا وضع السطر في ملف باتش و من كنترول بانل ستجد وظائف مجدوله Scheduled Tasks انشئ و ظيفه جديده و حدد ميعاد التنفيذطبعا الكلام ده علي جهاز السيرفر او علي جهاز عليه اوراكل كلاينت مع تمنياتي بالتوفيق تقديم بلاغ
بتاريخ: 30 سبتمبر 200619 سنة comment_79832 السلام عليكمجزاك الله خيرا استاذ عبدالله ندا وبالنسبة لرد الاخ اشرف فاروق هو المفروض ان الامر دة يتنفذ على السيرفر مش على الكلاينت على مستوى الداتا بيز عموما مش على جهاز واحد فقط والله اعلم تقديم بلاغ
بتاريخ: 8 يوليو 200916 سنة comment_162598 سلام عليكمممكن تعملى data base trigger يتنفذ فى الوقت اللى انتى عايزاة كيف ذلك يا أخ محمد ؟يعني مثلا نريد تنفيذ دالة أو بروسيدير يوم 1/1/2009 مثلا الساعة 9 صباحا هل لديك حل بالكود؟ تقديم بلاغ
بتاريخ: 8 يوليو 200916 سنة comment_162609 السلام عليكم اخى العزيز احمد عبد المجيدنعم هناك طريقة لتنفيذ اى كود على الداتابيز باستخدام jobs وفيما يلى مثال لتنفيذ بروسيديور تدعى recur_trnsوهذا المثال وظيفته انشاء قيود دورية كل فترة DECLARE X NUMBER; BEGIN SYS.DBMS_JOB.SUBMIT ( job => X ,what => 'RECUR_TRNS;' ,next_date => to_date('09/07/2009 06:00:00','dd/mm/yyyy hh24:mi:ss') ,interval => 'TRUNC(SYSDATE+1)+6/24' ,no_parse => TRUE ); SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x)); END; / commit; تقديم بلاغ
بتاريخ: 8 يوليو 200916 سنة comment_162610 السلام عليكم ورحمة الله وبركاته الحل بسيط جدا يا حبيبي في الله بكل بساطة تعمل السطر ده بروسيدر علي الداتا بيز وبعد كده تتدخل علي التود هتلاقي حاجة اسمها JOB اكيد تعرف مكانها فين , لو متعرفهاش هتلاقيها قي البراوز (تابه لوحده ) بعد tables , views , ........ , users , job ومن خلالها هتلاقيها بسيطة جدا تختار بس البروسيدر اللي انت عايزه يرن وتختار معاد التنفيذ بكل سهولة ,ارجو ان اكون افدتك .خالد جاد Oracle Developerمصر الحبيبة تقديم بلاغ
بتاريخ: 19 يوليو 200916 سنة comment_163729 السلام عليكم ورحمة الله وبركاته سأقوم بعمل JOB تحوي pROCEDURE لارسال بريد مثلا بشرط معين ارسال بريد موضوع لي علي منتدي ادارة قواعد البيانات أولا jOB (لا بد أن يكون لك صلاحية من مدير قواعد البيانات أو عملها من SYS USER) begin dbms_scheduler.create_job( job_name => 'mail_remind' ,job_type => 'PLSQL_BLOCK' ,job_action => 'begin p1(); end;' ,repeat_interval => 'FREQ=MINUTELY; INTERVAL=2' ,enabled => TRUE ,auto_drop => FALSE ,comments => 'Test job'); end; / البروسيدر CREATE OR REPLACE procedure p1 as cursor user_remind is SELECT ACTV_CODE,ACTV_DESC , ACTV_START_DATE,ACTV_END_DATE,USER_SHORT_NAME,USER_EMAIL_ID,ACTV_REMIND_DATE FROM USER_TASK_REMINDER,USER_DATA WHERE TO_date(ACTV_REMIND_DATE,'dd/mm/yyyy hh24:mi') <=SYSDATE AND ACTV_CURR_STATUS_CODE NOT IN (3) AND nvl(ACTV_REMIND_MTHD_CODE,3)=1 AND ACTV_ACCOUNTABLE_USER_ID = USER_ID; crlf VARCHAR2(2) := chr(13)||chr(10); begin for i in user_remind loop utl_mail.send('[email protected]',i.USER_EMAIL_ID,null,null,' ICTD Reminder- Auto Message', 'Mr. '||i.USER_SHORT_NAME|| crlf ||crlf || 'ICTD HelpDesk reminds you task number '||i.ACTV_CODE||crlf ||crlf || 'Subject is '||i.ACTV_DESC||crlf ||crlf || 'Remind Date/Time is '||i.ACTV_REMIND_DATE||crlf ||crlf || 'Thanks'||crlf ||crlf || 'Automatic reminder message', 'text/plain; charset=windows-1256',3); end loop; exception when others then null; end; / JOB WILL SEND THE MAIL EVERY DAY AT THE SAME TIME YOU CREATED THE JOB FOR DELAYED TASKS بالتوفيقأحمد تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.