05-01-14, 01:32 PM
السلام عليكم و رحمة الله ،،،
كيف الحال أخواني الأعضاء ...
سؤالي معقد بعض الشيء لذلك ساقوم بتوضيحه قدر الامكان بالرغم اني قد قمت بعملية البحث و وجدت بدائل و لكن بدائل غير عملية و اريد الحل الامثل لهذه المشكلة ،،
نبدأ باسم الله
لدينا ثلاثة جداول على سبيل المثال تحتوي على بيانات ثلاث كينونات هم :
1) ملف المريض | رمزها مثلا 1
2) الموردين | رمزها مثلا 2
3) الموظفين | رمزها مثلا 3
و لدينا جدول محاسبي يقوم باضافة قيود يومية يجمع كل الحسابات
و اسمه مثلا Account
و لدينا الحقول :
ID | ايراد | مصروف | Fkey | رمزها | نوع العملية
ولو فرضنا أن الحقل Fkey هو رقم يدل على ID من احد الجداول التي بالاعلى و نقوم بالتفرقه من خلال الرمز المدرج مثلاً : اذا كان 2 فانه يكون جدول الموردين و اذا كان 3 فانه يدل على جدول الموظفين ...الخ ،،
حقل [نوع العملية] غير مهم في سؤالي و لكن للتوضيح ، فمعناه اذا كان [1] فانه [ايراد] إذا كان [0] فانه [مصروف]
الغرض من الربط اظهار تفاصيل اكثر ،، فمثلا لو رغبت باظهار تقرير عام يظهر الايرادات و المصروفات و نبذه او ملاحظه عن الجدول الثانوي فمثلا اذا كان جدول المرضى يجلب اسم المريض ، اذا كان موظف يجلب اسم الموظف ، اذا كان مورد يجلب اسم المورد و الشركة التابع لها ...الخ
المطلوب :
1) عملية استعلام عام لجميع القيود اليومية التي حصلت مع تفاصيل عنها
من خلال استخدام Fkey + الترميز الذي يدل على الجدول
او
2) تحليل منطقي للجداول
نتائج توصلت اليها و هي كالتالي :
1 ) استخدام Triggers : و خلفيتي فيها ضعيفه .
2) الاستعلام عن كل جدول على حده حسب الترميز ، ثم عمل اتحاد لجميع الاستعلامات التي حصلت .
3) وضع ثلاثة مفاتيح اجنبية في الجدول كل مفتاح يدل على جدول و لكن سيضل هناك مفتاج اجنبي فارغ و جدول اجنبي مملوء فمثلا : عند ادخال حساب لمريض سيقوم بادخال المفتاج الاجنبي الخاص بالمريض فقط و يترك باقي المفاتيح الاخرى فارغه و استخدام Inner Join
او ممكن احد من الاخوه ان يساعدنا في عملية تحليل قاعدة بيانات خاصة
هذا ولكم جزيل الشكر و العرفان
كيف الحال أخواني الأعضاء ...
سؤالي معقد بعض الشيء لذلك ساقوم بتوضيحه قدر الامكان بالرغم اني قد قمت بعملية البحث و وجدت بدائل و لكن بدائل غير عملية و اريد الحل الامثل لهذه المشكلة ،،
نبدأ باسم الله
لدينا ثلاثة جداول على سبيل المثال تحتوي على بيانات ثلاث كينونات هم :
1) ملف المريض | رمزها مثلا 1
2) الموردين | رمزها مثلا 2
3) الموظفين | رمزها مثلا 3
و لدينا جدول محاسبي يقوم باضافة قيود يومية يجمع كل الحسابات
و اسمه مثلا Account
و لدينا الحقول :
ID | ايراد | مصروف | Fkey | رمزها | نوع العملية
ولو فرضنا أن الحقل Fkey هو رقم يدل على ID من احد الجداول التي بالاعلى و نقوم بالتفرقه من خلال الرمز المدرج مثلاً : اذا كان 2 فانه يكون جدول الموردين و اذا كان 3 فانه يدل على جدول الموظفين ...الخ ،،
حقل [نوع العملية] غير مهم في سؤالي و لكن للتوضيح ، فمعناه اذا كان [1] فانه [ايراد] إذا كان [0] فانه [مصروف]
الغرض من الربط اظهار تفاصيل اكثر ،، فمثلا لو رغبت باظهار تقرير عام يظهر الايرادات و المصروفات و نبذه او ملاحظه عن الجدول الثانوي فمثلا اذا كان جدول المرضى يجلب اسم المريض ، اذا كان موظف يجلب اسم الموظف ، اذا كان مورد يجلب اسم المورد و الشركة التابع لها ...الخ
المطلوب :
1) عملية استعلام عام لجميع القيود اليومية التي حصلت مع تفاصيل عنها
من خلال استخدام Fkey + الترميز الذي يدل على الجدول
او
2) تحليل منطقي للجداول
نتائج توصلت اليها و هي كالتالي :
1 ) استخدام Triggers : و خلفيتي فيها ضعيفه .
2) الاستعلام عن كل جدول على حده حسب الترميز ، ثم عمل اتحاد لجميع الاستعلامات التي حصلت .
3) وضع ثلاثة مفاتيح اجنبية في الجدول كل مفتاح يدل على جدول و لكن سيضل هناك مفتاج اجنبي فارغ و جدول اجنبي مملوء فمثلا : عند ادخال حساب لمريض سيقوم بادخال المفتاج الاجنبي الخاص بالمريض فقط و يترك باقي المفاتيح الاخرى فارغه و استخدام Inner Join
او ممكن احد من الاخوه ان يساعدنا في عملية تحليل قاعدة بيانات خاصة
هذا ولكم جزيل الشكر و العرفان