السلام عليكم اخوتي في هذا المنتدي والملتقي الرائع
في البداية نسأل الله ان يحمينا ويحميكم ويحمي الامة الاسلامية شر الوباء
تانيا احتاج مساعدتكم في تكوين view في sqlserver
مثال ربط اكثر من جدول مع بعض بشرط اخر صفوف
تم ادخالها وللعلم يوجد حقل id بالتسلسل لكل جدول وقمت بعمل (max (id
ولم تنجح معي الفكرة
الجدول الاول
الاسم الوظيفة
محمد مهندس ثاني
محمد مهندس اول
الجدول التاني
الاسم الادارة
محمد البحث العلمي
محمد قواعد البيانات
المطلوب النتيجة في view تكون
الاسم الوظيفة الادارة
محمد مهندس اول قواعد بيانات
علي مهندس مشروعات
وبهذا التسلسل
وجزاكم الله خير
السلام عليكم اخي الكريم
المشكلة لديك تكنمن في تصميم قاعدة البيانات لانك ببساطة لم تربط بين الجدولين بمفتاح رئيسي وفرعي
لاحظ ان لديك الاسم محمد لديه وظيفتين كيف سيعرف البرنامج انك تريد محمد الثاني ؟
عليك اعادة تصميم قاعدة البيانات على النحو التالي :
جدول الاسماء
1 - اي دي مفتاح رئيسي
2 - الاسم
3 - الوطيفة
4 - اي دي ي دي تخصص مفتاح فرعي
جدول التخصص
1 - ي دي تخصص مفتاح رئيسي
2- التخصص والادارة
الان عندما يتم الاستعلام سيكون جلب الاسم والوظيفة من الجدول الاول وجلب التخصص والادارة من الجدول الثاني بشرط الاي دي تخصص
ارجو تكون الفكرة اتضحت لديك
دمت بخير
(22-03-20, 03:23 PM)ابراهيم ايبو كتب : [ -> ]السلام عليكم اخي الكريم
المشكلة لديك تكنمن في تصميم قاعدة البيانات لانك ببساطة لم تربط بين الجدولين بمفتاح رئيسي وفرعي
لاحظ ان لديك الاسم محمد لديه وظيفتين كيف سيعرف البرنامج انك تريد محمد الثاني ؟
عليك اعادة تصميم قاعدة البيانات على النحو التالي :
جدول الاسماء
1 - اي دي مفتاح رئيسي
2 - الاسم
3 - الوطيفة
4 - اي دي ي دي تخصص مفتاح فرعي
جدول التخصص
1 - ي دي تخصص مفتاح رئيسي
2- التخصص والادارة
الان عندما يتم الاستعلام سيكون جلب الاسم والوظيفة من الجدول الاول وجلب التخصص والادارة من الجدول الثاني بشرط الاي دي تخصص
ارجو تكون الفكرة اتضحت لديك
دمت بخير
مشكور جدا اخي علي المساعدة ولكن انا عندي الاسم مفتاح رئيسي والمطلوب عند عمل ربط لجدولين تكون النتيجة اعطاء اخر النتائج في الصفوف متلا علي النجار اسم لا يتكرر عندي في جدول الاسماء
ولكن في جدول الوظائف والرواتب يتغير باضافة سجل جديد
متلا شهر مارس مهندس تاني وفي فبراير رئيس قسم
تكون النتيجة في ربط الجداول واظهار النتائج الاخيرة للموظفين
الاسم. الوظيفة
علي النجار رئيس قسم
وحفظك الله
السلام عليكم اخي الكريم
لديك خلط بين الاختصاص الدي يدوم وهو متعلق بالشهادة او المؤهلات وهذا لايتغير الا اذا نال الموظف شهادات او دورات اختصاصية
اما العمل المسند اليه (الوظيفة) فهي ربما تتغير وهي حقل في الجدول الاول وهي ايضا تبقى مالم يتم تعديلها
الان كيف لنا ان نعرف مجموعة الوظائف التي اسندت لموظف ما ؟
هنا يجب انشاء جدول للوظائف مستقل وبما ان الوظيفة الواحدة يمكن ان يؤديها اكثر من موظف ويمكن ان يؤدي الموظف الواحد اكثر من وظيفة في نفس الوقت هنا اصبحت العلاقة (كثير لكثير ) وبالتالي نحتاج الى جدول اخر حاصل من الجدولين جدول الاسماء وجدول الوظائف نسميه جدول التغييرات مثلا مثل فاتورة البيع حيث يمكن للفاتورة ان تحوي اكثر من منتج والمنتج الواحد يمكن ان يوجد في اكثر من فاتورة
نصيحتي لك ان تراجع العلاقات بين الجداول لان البرنامج الناجح هو الذي قاعدة بياناته مصممة بشكل جيد وهي العمود الفقري له
دمت بخير
(22-03-20, 07:40 PM)ابراهيم ايبو كتب : [ -> ]السلام عليكم اخي الكريم
لديك خلط بين الاختصاص الدي يدوم وهو متعلق بالشهادة او المؤهلات وهذا لايتغير الا اذا نال الموظف شهادات او دورات اختصاصية
اما العمل المسند اليه (الوظيفة) فهي ربما تتغير وهي حقل في الجدول الاول وهي ايضا تبقى مالم يتم تعديلها
الان كيف لنا ان نعرف مجموعة الوظائف التي اسندت لموظف ما ؟
هنا يجب انشاء جدول للوظائف مستقل وبما ان الوظيفة الواحدة يمكن ان يؤديها اكثر من موظف ويمكن ان يؤدي الموظف الواحد اكثر من وظيفة في نفس الوقت هنا اصبحت العلاقة (كثير لكثير ) وبالتالي نحتاج الى جدول اخر حاصل من الجدولين جدول الاسماء وجدول الوظائف نسميه جدول التغييرات مثلا مثل فاتورة البيع حيث يمكن للفاتورة ان تحوي اكثر من منتج والمنتج الواحد يمكن ان يوجد في اكثر من فاتورة
نصيحتي لك ان تراجع العلاقات بين الجداول لان البرنامج الناجح هو الذي قاعدة بياناته مصممة بشكل جيد وهي العمود الفقري له
دمت بخير
مشكور جدا اخي علي توضيحك وليس هذا ما انفده اخي العزيز هذا مجرد مثال علي المطلوب
التنفيد كبير جدا ولاكن ما احتاج هو inner join او full join بحيث ربط صف بكود معين وهوا مفتاح وعملت الاسم كامثال باخر في صف الجدول الاخر بالكود المعين والمطلوب هو اضافة max(id) علي الجدول الاخر قمت باكتر من محاولة ولم انجح
ممكن المساعدة من اهل الخبرة