بتاريخ: 23 أغسطس 200520 سنة comment_45398 مشكلة الترقيم التلقائي والجداول الفرعية وعلى ما اعتقد ايعجبك يا ادمن اسم الموضع ومتخذفه من الاسئلةلان وصلنا الى مرحلة حتى اسم المواضيع ايغث وللاسف تحية طيبة الى جميع اعضاء المنتدى والعاملين عليه بالخصوص اتمنى لكم اسعد الاوقات اخواني في بداية تصميمي لقاعدة المعلومات واجهت ثلاثة مشاكل اريد لها حل وعلى ما اعتقد انها سهلة جدا جدا ولكن وكما تعلمون اني جديدة على تصميم قواعد المعلومات ففكرت واغلب ما تعلمته هو من هذا المنتدى الجميل باعضاء الاطياب انا لدي قاعدة معلومات متكون من 20 جدول الاول info متكون من الاسم واسم الام والرقم التسلسلي pk وكل الجداول الباقية fk وتتكون من معلومات اخرى المشاكل التي واجهتها في برنامجي هذا 1- انا عندما افتح جديد يطلب دائما مني ان ادخل له الرقم التسلسلي رغم المفروض ان يرقم هو تلقائي فارجو ان اتعلم كيف اجعله يرقم تلقائي وارى الرقم امامي علما اني لدي مايقارب 4 حاسبات تعمل على هذه القاعدة 2- عندمل اقوم بادخال رقم تسلسلي مثلا رقم 1 ياخذه ولا يعترض وعندما انتقل الى الجدول ال fk يرقم هو هناك ويعطي له رقم 1 ولكن المشكلة عندما انقر على فتح قيد جديد بالجدول الرئيسي pk يفتح المفروض رقم 2 اقوم بادخال رقم 2 له يقبله ولكن عندما انظر الى الجدول fk ارى انه عند نقري على جديد في pk يبقى محتفظ بالقيمة السابقة وهي مثلا رقم 1 او اذا كنت في رقم 10 ونقرت جديد يبقى رقم عشرة وهكذا 3- عندما اريد ان ابحث مثلا على اسم محمد ناصر طبعا الذي ادخلته مسبقا فاني اجده ولكن المشكلة هي عند نقري بالماوس على اي خليه فبامكاني ان احررها وواخذفها وادخل كلمات جديدة بدل القديمة رغم المفروض الذي اريده هو عند فتحي لاي قيد سابق تم ادخاله ان لا يقبل التحرير الا اذا نقرت على ايقونه اسمها تحرير وفعلا انا لا اعرف كيف اجعل واجه برنامجي كيف لا تقبل الادخال واذا نقرت على ايقونة تحرير يعطيني السماحية للكتابة تقديم بلاغ
بتاريخ: 23 أغسطس 200520 سنة comment_45405 الاخت الكريمة اظن انك لا تريدين ان تستفيدي لوحدك من الاسئلة مع اني اجبتك ولكن الاخوة المشرفين حذفو الموضوع لأن العنوان لا يدل على الموضوع وهذا من قواعد المنتدى وهدفه هو فائدة الجميع ولو اصبح كذلك لدخلنا في حيص بيص من جراء عدم كتابة الموضوع فمنهم من يكتب ساعدوني .... النجدة ....... بالله عليكي كأننا في اطفائية ايعقل هذاورحم الله امرئ عرف قدر نفسه ومن تواضع لله رفعهوسوف اجيبك عن اسئلتك ليستفيد منها الاخوة وهي التي اجبت عنها في السابق بالنسبة للسؤال الاول 1- انا عندما افتح جديد يطلب دائما مني ان ادخل له الرقم التسلسلي رغم المفروض ان يرقم هو تلقائي فارجو ان اتعلم كيف اجعله يرقم تلقائي وارى الرقم امامي علما اني لدي مايقارب 4 حاسبات تعمل على هذه القاعدة يمكنك التغلب على هذه المشكلة بوضع تريجر على مستوى البلوكاسمه pre-insertdeclare temp number; begin select (max(nvl(field_your_number,0))) +1 into temp from table_name; :yor_text:=temp; end; هذا بالنسبة للحل وهو موجود بالمنتدى ولو بحثتي لوجدتيه موجود على الرابط http://www.araboug.org/ib/index.php?sho...c=8922&hl=ترقيمطبعا تضعي في خصائص الحقل الذي تريدين وضع الترقيم فيه enabled=NOبالنسبة للسؤال الثاني 2- عندمل اقوم بادخال رقم تسلسلي مثلا رقم 1 ياخذه ولا يعترض وعندما انتقل الى الجدول ال fk يرقم هو هناك ويعطي له رقم 1 ولكن المشكلة عندما انقر على فتح قيد جديد بالجدول الرئيسي pk يفتح المفروض رقم 2 اقوم بادخال رقم 2 له يقبله ولكن عندما انظر الى الجدول fk ارى انه عند نقري على جديد في pk يبقى محتفظ بالقيمة السابقة وهي مثلا رقم 1 او اذا كنت في رقم 10 ونقرت جديد يبقى رقم عشرة وهكذا بتطبيق حل المشكلة الاولى لاتظهر مشاكل واظن سببها انه هناك نسخ للبيان او استخدام ما يسمى copy from item وللمعلومية اذا كنتي تريدين تخزين البيانات من الجدول الاساسي في الجدول الفرعي او ما يسمى master & detail فلا داعي لاظهار الرقم الاساسي في الجدول الفرعي او كما تطلقين عليه ب fkالسؤال الثالث3- عندما اريد ان ابحث مثلا على اسم محمد ناصر طبعا الذي ادخلته مسبقا فاني اجده ولكن المشكلة هي عند نقري بالماوس على اي خليه فبامكاني ان احررها وواخذفها وادخل كلمات جديدة بدل القديمة رغم المفروض الذي اريده هو عند فتحي لاي قيد سابق تم ادخاله ان لا يقبل التحرير الا اذا نقرت على ايقونه اسمها تحرير وفعلا انا لا اعرف كيف اجعل واجه برنامجي كيف لا تقبل الادخال واذا نقرت على ايقونة تحرير يعطيني السماحية للكتابة هذه المشكلة يمكن حلها بادخول الى خصائص ال الحقل وتغيير خاصية update allowed الى noفبهذه الطريقة تستطين السيطرة عليهاوكذلك توجد طريقة برمجية اخرى وهيعند تشغيل الفورم تحويل خاصية التعديل للحقل الى falseكالتاليset_item_property('item_name',UPDATE_ALLOWED ,property_false); وللتحرير يمكنك كتابة الامر set_item_property('item_name',UPDATE_ALLOWED ,property_true); رحم الله امرئ عرف قدر نفسه تم تعديل 23 أغسطس 200520 سنة بواسطة Admin05 تقديم بلاغ
بتاريخ: 24 أغسطس 200520 سنة comment_45455 أظن أن التعليمات التالية للترقيم ستعطيها مشكلة unique لأن لديها أكثر من مستخدم يعملون في نفس الوقتdeclare temp number;begin select (max(nvl(field_your_number,0))) +1 into temp from table_name; :yor_text:=temp;end; لذلك لابد من استعمال sequance حيث يمكن إنشاء sequance اسمه مثلا xx_seq ثم وكما ذكر admin05 يمكن وضع في per-insert trigger مايلي:declare temp number;begin select xx_seq.nextval into temp from table_name;:yor_text:=temp;end;أما إذا أرادت أن ترى الرقم أمامها كما ذكرت فلابد من أن تضع للحقل الذي تريده initial value كما يلي:sequance.xx_seq.nextval تم تعديل 24 أغسطس 200520 سنة بواسطة chayah تقديم بلاغ
بتاريخ: 24 أغسطس 200520 سنة comment_45469 الاخ chayahاقتراح جميل مع انه تصدف واحد بالالف قد يحدث ذلك وانا مطبقه عندي على 10 يوزر بدون اي مشاكل ويعملون بنفس الوقت وما تقوله صحيح ولكن يوجد به بعض البطئ تقديم بلاغ
بتاريخ: 25 أغسطس 200520 سنة comment_45529 الأخ admin شكراً لمشاركاتك القيمة التي أقرأها دائماً وأرجوا التعرف عليك في وقت قريب.أما بالنسبة لإقتراحي فهو لحماية إدخالات المستخدم وإن كانت النسبة 1 بالمائة ألف فيجب أن نعطي المستخدم برنامجاً free of bugesواقتراحي بداية ونهاية هو لإعطاء الأخوة في المنتدى تصور لكيفية التفكير في التطبيقات الكبيرة التي يكون فيها عدد كبير من المستخدمين وتكون المعلومات حساسة جداً وضياع سجل يعني ضياع مال ووقت. تقديم بلاغ
بتاريخ: 28 أغسطس 200520 سنة كاتب الموضوع comment_45825 تحية طيبة لك اخي العزيز على الرد والذي سوف احاول ان اجربه واشكرك عليه كثيرا والجميل انت ارسلتني الى الرابط في الاعلى للعلم ان الذي سألك سابقا ايضا المسكين قد قام المشرفون بحذف موضوعة للاسف ولكن جزاهم الله خيرا انهم قد غفلوا عن موضوعي هذه ولم افهم كلمتك والقصد منها رحم الله امرئ عرف قدر نفسهارجو التوضيح لاني قد تالمت منها علما عمليه الحذف من دون ابلاغ او اعلام او انذار هذه قمع للرأي وللاسف متى نتحرر من القمع تقديم بلاغ
بتاريخ: 28 أغسطس 200520 سنة comment_45828 اختي الكريمةلم اقصد بها شيء وكان هدفي هو الافادة ولم تكوني انتي المقصودة تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.