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

سؤال بسيط عن تحديث بيانات الجداول


صلاح الثبيتي

Recommended Posts

السلام عليكم ;)

عندي سؤال بسيط لكن ماني عارف اضعه باي قسم . فوضعته بالقسم العام :angry:

عندي جدول فيه تاريخ استعاره كتب و تاريخ اعاده الكتب للمكتبه و عندي عمود لحساب التاخير بالايام

سؤالي كيف اخلي الاوراكل يحسب التاخير بعدد الايام بشكل اوتوماتيكي !!

يعني اذا تاريخ الاعاده 1-1-2004 و التاريخ صار 29-3-2004 فيطلع لي بعمود الحساب = 90 يوم !! (فرضاً) فكيف اسوي هذا الشئ ؟؟ هل هو كود SQL ؟ او PL/SQL او كيف بالضبط ؟

افيدونا افادكم الله

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

شباب انا شكلي ما عرفت اشرح المشكله ..

المشكله مش بالتواريخ او الحساب ..

انا ابغى طريقه اخلي الاوراكل يعدل على العمود بشكل اوتوماتيكي .. يعني بدون تدخل المستخدم ;)

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

السؤال بالضبط : كيف اقدر اخلي ال Oracle تعمل Update اوتوماتيكلي لهذا ال Column بحيث يتم تعديل قيمته اعتمادا على تاريخ اليوم ؟ فمثلا اذا كان عدد ايام التاخير اليوم هو 10 ايام فيجب تعديل هذه القيمة غذا الى 11 بشكل الي ؟
انا ما بعرف الجواب بالضبط بس اعتقد هناك Utility بال Oracle اسمها DBMS_JOB ممكن انها تفيد بهذا الموضوع , اذا اي حد بعرف كيف ممكن نستخدمها بهذه الحالة فممكن يساعدنا اذا كانت الفكرة تعتمد على هذه ال Utility .

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

السؤال بالضبط : كيف اقدر اخلي  ال Oracle تعمل Update اوتوماتيكلي لهذا ال Column بحيث يتم تعديل قيمته اعتمادا على تاريخ اليوم ؟ فمثلا اذا كان عدد ايام التاخير اليوم هو 10 ايام فيجب تعديل هذه القيمة غذا الى 11 بشكل الي ؟
انا ما بعرف الجواب بالضبط بس اعتقد هناك Utility بال Oracle  اسمها DBMS_JOB ممكن انها تفيد بهذا الموضوع , اذا اي حد بعرف كيف ممكن نستخدمها بهذه الحالة فممكن يساعدنا اذا كانت الفكرة تعتمد على هذه ال Utility .

نععععععععععم هذا هو سؤالي ;)
رابط هذا التعليق
شارك

أخ صلاح لا أعلم شيء عن عن Dbms_Job
ولكن يمكن ربط عملية تحديث هذا العمود مع حدث الدخول إلى الفورم أو أن تقوم بعمل timer يعمل بشكل يومي .. لا أدري أن هذا ينفع كحل

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

السلام عليكم
يا اخي ليس الهدف من قاعدة البيانات ان تقوم بالحساب و لا داعي لوجود مثل هذا العمود الذي يحوي
ارقام تمثل فرق الايام بين تاريخين موجودين في عامودين سابقين
صمم الجدول بحيث يحوي فقط التاريخين و من خلال التطبيق باستخدام الفورم بلدر اعمل دسبلي ايتم
توضع فيه قيمة الفرق هذا هو الافضل انشاء الله

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

اشكر الاخوان على الردود و لكن الدكتور يبغى كذا !!!

حاولت اني اقول له اني اقدر اسوي هذا الشئ عن طريق كود برمجي لكن هو يبغى كذا!!!

ياليت لو احد يقدر يفيدني بالفكره بس .. و انا راح اكمل بحث .. يعني احد عنده موقع يهتم بهذي الامور ؟

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

السلام عليكم
اخي صلاح
جاءتني فكرة لحل مشكلتك وهي ان يتم عمل تريجر علي الداتابيز
يعمل عندما يتم الدخول علي الداتا ليز من اي برنامج
و يتم فيح حساب قيمة التأخير
و هذا هو الكود

create or replace  trigger calc_date  after  logon  on  schema 
 begin update test_date 
set period =to_date(sysdate,'dd-mm-yyyy')-to_date(date2,'dd-mm-yyyy'); 
end  ;


هذا التريجر يقوم بتحديث الفترة كلما دخلت علي السكيما
بمعني اذا كان اليوم هو 10 مثلا وتاريخ الاعادة كان 5 اذن التأخير سيكون 5
و غدا عندما تدخل علي قاعدة اليبيانات يصير 6 و هكذا
هذا حل سريع لمشكلتك
شوف ده هيحل المشكلة ولا لا و قولي
طبعا اذا كنت تدخل باكثر من سكيما
فغير on schema
لتصبح on database
بالتوفيق

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

اخوي هاني .. انت كذا حليت مشكلتي .. مشكوووووووووووووور كثير و الله يوفقك و تاخذ الشهاده اللي فوق OCP
:unsure:

اخر سؤال و هو رد على كلامك "يعمل عندما يتم الدخول علي الداتا ليز من اي برنامج"

هل يشتغل البرنامج عند استخدامي JDeveloper لأني انا قاعد اسوي برنامج بالـ JSP

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

نعم اخي
هذا التريجر يعمل عندما تتصل بقاعدة البيانات بغض النظر عن البرنامج
انما ايه الشهادة دي اللي بعد الocp الخاصة بالديفلوبر ... :unsure:
بس هل جربت التريجر ولا لا

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

الحقيقه انا ما اعرف للشهادات و لكن ان شاء الله احاول احصل عليها :unsure:

بالنسبه للتريجر راح اجربه لكن ان شاء الله يوم الخميس ... تعرف يا عم ضغط الدراسه :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.

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

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

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