اذهب الي المحتوي
صلاح الثبيتي

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

Recommended Posts

صلاح الثبيتي

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

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

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

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

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

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

شارك هذه المشاركه


رابط المشاركه
شارك
salama11433
John

رد وافى يــــ ;) ــــــاSalama

تم تعديل بواسطة John

شارك هذه المشاركه


رابط المشاركه
شارك
صلاح الثبيتي

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

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

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

شارك هذه المشاركه


رابط المشاركه
شارك
braveheart

إذا أردت أن تحسب عدد ايام التأخير في النموذج يمكنك بواسطة التريجر post update على حقل تاريخ الإرجاع ومن ثم يمكنك إدخالها في الجدول .



مع تحياتي

شارك هذه المشاركه


رابط المشاركه
شارك
KhalidOCP

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

شارك هذه المشاركه


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

نععععععععععم هذا هو سؤالي ;)

شارك هذه المشاركه


رابط المشاركه
شارك
alfarook

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

شارك هذه المشاركه


رابط المشاركه
شارك
Online

انا اؤيد رأي اخوي BraveHeart انك تسوي Trigger وتحط فيه ناتج طرح التاريخين .. وTrigger هذا يشتغل كل post update

شارك هذه المشاركه


رابط المشاركه
شارك
mohamadalmohamad

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

شارك هذه المشاركه


رابط المشاركه
شارك
mohamadalmohamad

و انا جاهز لمثال لو احببت للتوضيح

شارك هذه المشاركه


رابط المشاركه
شارك
صلاح الثبيتي

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

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

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

شارك هذه المشاركه


رابط المشاركه
شارك
هانى سند

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

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

شارك هذه المشاركه


رابط المشاركه
شارك

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

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

سجل حساب جديد

تسجيل دخول

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

سجل دخولك الان

×
×
  • اضف...

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

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