بتاريخ: 5 مارس 200917 سنة comment_150545 السلام عليكم ورحمة الله وبركاتهممكن مساعدة لنفرض مثلا لدي جدول وهوSTUDENTSNAMEAGEاريد طريقة لحساب عمر الطلاب عند مرور السنون يحدث تحديث للعمر، يزداد عمر الطالب بصورة (اوتماتيكية) ولا داعي لتحديث عمره كل سنة بواسطة مبرمج قاعدة البياناتانا اعرف هذا الكود {Age = Today - DateOfBirth}ولكن لا اعرف اين اسخدمه او اضعه؟ هل ممكن ان يكون Triggerممكن تخبروني الطريقة لو سمحتوا جزاكم الله كل خير تم تعديل 5 مارس 200917 سنة بواسطة sonic تقديم بلاغ
بتاريخ: 5 مارس 200917 سنة comment_150549 السلام عليكماخي العزيز...ممكن تضع الكود بـــ FORMULA على حقل عمر الطالب....بالتوفيق تقديم بلاغ
بتاريخ: 5 مارس 200917 سنة كاتب الموضوع comment_150553 شكرا لك ولكن اين اجد ال FORMULA حاولت كل الطرق لايجادها ولم اجدها؟ مع العلم استخدم Oracle 9i قاعدة بيانات والواجهة ASP.netاسف على كثرة الاسئلة ولكن مبتدئ بالاوراكل جزاك الله كل خير اخي الكريم على الرد تقديم بلاغ
بتاريخ: 6 مارس 200917 سنة comment_150570 السلام عليكم....هناك ملاحظة هامة في تصميم قواعد المعطيات:من أنواع الواصفات (الحقول) للكائن(الجدول) الواصفة المشتقة: هي الواصفة التي يتم حساب قيمتها استناداً إلى واصفات أخرى، بالاعتماد على خوارزميات محددة، بحيث يمكن الاستغناء عن تخزينها في قاعدة المعطيات. فعلى سبيل المثال يمكن حساب عمر الموظف اعتمادا على تاريخ ميلاده المُخزن في قاعدة المعطيات. لذلك من الخطأ الفادح تخزين العمر في الجدول و يجب تخزين تاريخ الميلاد عوضاً عنه و عندما تحتاج للعمر تقوم بحسابه ببساطة كالتالي:(التاريخ الحالي - تاريخ الميلاد) / 360(sysdate-Birthdate)/360 تم تعديل 6 مارس 200917 سنة بواسطة TROYMAN تقديم بلاغ
بتاريخ: 6 مارس 200917 سنة كاتب الموضوع comment_150577 شكرا لك على المعلومةولكن اين يمكن ان اضع الشرط ممكن توضيح؟ لوسمحتوا تقديم بلاغ
بتاريخ: 8 مارس 200917 سنة كاتب الموضوع comment_150667 الظاهر لاتوجد طريقة لاضافة شرط بقاعدة البيانات الاوراكل! تقديم بلاغ
بتاريخ: 8 مارس 200917 سنة comment_150680 اسمع ياابني ياسونيكشوف انت تتعامل مع الاوراكل فورمز صح؟؟؟؟من هذا الفورم انت تقدر تحط الtrigger ممكن يكون على مستوى الفورم اي سوف يرنن اول ماتفتح الفورمداخل الtrigger تحط الformula اللي انت تتكلم عنهابس طبعا لازم تخزن تاريخ الميلاد في متغير date select date_of_birth into date from user_info where user_id=:user_id ; >>>>>>>>>>>>>>ok لي عودة..... تقديم بلاغ
بتاريخ: 8 مارس 200917 سنة كاتب الموضوع comment_150686 اخي hrs ردك جدا اسعدني اخي لا استخدم الاوراكل فورز ولكن استخدم Oracle9i DataBase وربط قاعدة البيانات في ASP.NETولكن توجد لدي trigger هل من الممكن وضع الشرط فيها يجب عمل ذلك لانه مهم جدا لمشروعي فلا يصح وضع العمر بصورة مباشرة يجب وضع تاريخ الميلادة بوجود طريقة يجب اضافتها لتحسب العمر كل سنة...جزاك الله كل خير اخي الكريم hrs تم تعديل 8 مارس 200917 سنة بواسطة sonic تقديم بلاغ
بتاريخ: 9 مارس 200917 سنة comment_150735 يتبع ..بس طبعا لازم تخزن تاريخ الميلاد في متغير date select date_of_birth into date from user_info where user_id=:user_id ; >>>>>>>>>>>>>>ok ....................بعدين لما تخزنه في متغير تقدر تستخدمه في الفورملا .. انا بصراحة لم اتعامل مع الasp.netولكن كلامك منطقيا صح فاذا عندك حلين .. اما انك تجرب او انك تنتظر الاجابة من الخبراء وان شاء الله ماراح يقصرونموفق سونيكبس فيه مشكلة في معادلتك راح تطلع تاريخ وليس عمر!!!اخ تروي مان معادلتك غريبة .. كيف تطرح تاريخ من تاريخ والناتج تقسمه على رقم؟؟؟؟ مختلفين في النوع؟؟؟يعني لحساب العمر لازم نوصل للسنة .. شنو الطريقة؟؟ تقديم بلاغ
بتاريخ: 9 مارس 200917 سنة كاتب الموضوع comment_150739 جزاك الله كل خير اخي الكريم على الرد بارك الله فيكوبانتظار الخبراءوان لم احصل على اجابة سوف اقوم بوضع العمر ك Number وفقكم الله تقديم بلاغ
بتاريخ: 9 مارس 200917 سنة comment_150740 بسم الله الرحمن الرحيمإذا فرضنا إن الجدول بيتكون من أربع أعمده . create table students(student_no number(5),student_name varchar2(15),birth_date date,age number(2)) وتريد عند إدخال الـbirth_date يقوم بحساب العمر ووضعه فى الـage .هتعمل db trigger كالآتى : create or replace trigger trg1 before insert on emp referencing old as old new as new for each row begin select trunc(months_between(sysdate,:new.birth_date)/12) into :new.age from dual; end; تقديم بلاغ
بتاريخ: 9 مارس 200917 سنة كاتب الموضوع comment_150744 جزاك الله كل خير نجحت الطريقة بارك الله فيك اخي Ahmed Farghaly الله يوفقك تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.