delphi4arab منتديات دلفي للعرب

نسخة كاملة : ايهما العلاقة الصحيحة برأيكم
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
[صورة: 0f38309067c7274.jpg]



[صورة: 2695ecd62d8b4fa.jpg]
السلام عليكم
الامور غير واضحة ممكن تفريغ نصي اسم الجداول مع اسامي المفاتيح...
أخ فتح الامور واضحة
جدول للموظفين يحتاج الى ربطه بجدول البنوك لمعرفة البنك والفرع البنكي
البنك مثلا بنك العمران والفرع البنكي فرع طرابلس
ايهما افضا ان يكون في جدول الموظفين حقلين رقميين احدهما للمفتاح الرئيسي للبنك والاخر للمفتاح الرئيسي للفرع المصرفي
ام يكون هناك حقل واحد رقمي يخزن المفتاح الرئيسي للفرع المصرفي فقط .
السلام عليكم
ايهما افضا ان يكون في جدول الموظفين حقلين رقميين احدهما للمفتاح الرئيسي للبنك والاخر للمفتاح الرئيسي للفرع المصرفي
ام يكون هناك حقل واحد رقمي يخزن المفتاح الرئيسي للفرع المصرفي فقط .
الاختلاف فقط في الاستعلام الاول الاستعلام كتابته اقصر و تنفيذه اسرع
الثاني الاستعلام اطول و تنفيذه اطول لكن الامور ستكون منضمة اكثر
انا عن نفسي افضل الثاني احب التنضيم
الثاني أصح, ان لم تخني الذاكرة العلاقة الأولى تحول الى الثانية في احدى قوانين normalisation في طريقة merise
يعتمد على قوانين التسيير والتنظيم.
الحل الأول قد يكون صحيح في حالة إذا اعتبرنا أن المصرف الرئيس به موظفين (وهم أيضا معنيين بالبرنامج). هنا يجب التحقق من عدم ازدواجية الوظيفة (أي يعمل إما في مصرف رئيسي أو مصرف فرعي).
الحل الثاني قد يكون صحيح في حالة أن الموظفين محل الاهتمام هم فقط المنتمين إلى المصرف الفرعي.

الحل الثالث: يمكن جعل ID الخاص بالمصارف جميعها على شكل رمز مركب بحيث الرقمين الأولان خاص بالمصرف الرئيسي والبقية خاصة بالمصرف الفرعي.
مثال
المصرف الرئيسي الأول: 01000
المصرف الرئيسي الثاني: 02000
المصرف الفرعي الأول التابع للمصرف الرئيسي الأول 01001
المصرف الفرعي الأول التابع للمصرف الرئيسي الثاني: 02001
وعليكم السلام
مجرد النظر للحل الاول دون تفكير يبدو خلل بالرغم من انه يبدو احسن من وجهة نظر برمجية فقط، الخلل وجود حلقة/دائرة/سمها كما تشاء، الوصول للمعلومة/البيانات من طريقين خطأ يجب تفاديه. ان كان الخيار محصور بين الاثنين الثاني احسن وإلا الحل الثالث الذي اقتره الاخ مروان انسب.
PHP كود :
المصرف الرئيسي الأول: 01000
المصرف الرئيسي الثاني
: 02000
المصرف الفرعي الأول التابع للمصرف الرئيسي الأول 01001
المصرف الفرعي الأول التابع للمصرف الرئيسي الثاني
: 02001 

هذا حل فيه عبقرية مع بساطته

يمكن تقليص زمن الاستعلام وتعقيده بقراءة اخر رقم وجلب اسم المصرف الرئيسي .
يعني دالة تستخلص رقمين بحيث يكون الرقمين الاخيرين للمصارف الرئيسية والرقمين الاولين للمصارف الفرعية .
العلاقة الاولى اصح
مباشرة الثاني اصح
الصفحات : 1 2