(22-10-16, 07:43 PM)ابو ليلى كتب : الفكرة الاولى
بما ان العمل سيكون على 3 جداول مجتمعة فالافضل حتى لا ندخل في تعقيدات الربط في الاستعلام
ان تقومي بانشاء View في القاعدة و يضم جميع الحقول التي تحتاجينها من الـ 3 جداول و بعدها يتم تحميل هذا View الى Dataset او DataTable
و يتم اللعب بالاستعلامات على هذا DataTable باستخدام Ling
او حتى اذا كنت لا تودين استخدام Ling يمكنك استخدام جمل SQL مباشرة على هذا View بكل بساطة
و جلب البيانات الى DataGridView
اذا اعجبتك الفكرة قومي بانشاء الـ View مع الاشارة الى معاني الحقول (اقصد كل حقل ماذا يمثل)
و ان شاء الله نتابع بعد ذلك ......
شكرا استاذ
ولكن لم اتعامل مع view ولا اعرف كيفية تطبيقها لذلك سيصعب علي فهم ذلك قليلا
فانا اتعامل مع جمل الاستعلامات sql من خلال كلاس
عملية ظهور البيانات فيdatagridview تمت بالاستعلام
(22-10-16, 10:35 PM)ممدوح كتب : أخشى أن المشروع متشعب جدا لكن لا مانع من المحاولة في الانتظار على قدر الاستطاعة
هذه محاولة على ما فهمت من صورة الجداول
كود :
SELECT TOP (3)
Student_Table.Student_ID,
Student_Table.Student_Name,
Student_Table.Specialization_ID,
Student_Table.St_Current_Level
FROM Specialization_Table
INNER JOIN Student_Table
ON Specialization_Table.Specialization_ID = Student_Table.Specialization_ID
WHERE ( Student_Table.St_Current_Level = @level )
ORDER BY Student_Table.Specialization_ID,
Student_Table.Student_Name
ومعروف أن TOP تأخذ أعلى أسطر وهنا تم تحديد 3 أسطر
و level@ هو بارامتر لتحديد المستوى
يبقى مسألة التنازلي والتصاعدي يكون مع ORDER BY فيكون DESC للتنازلي مثل
ORDER BY student_table.specialization_id DESC
ويمكن التنويع لكل عمود من ترتيب تصاعدي أو تنازلي
مع مراعاة أن الترتيب سيكون بناء على ترتيب اسماء الأعمدة بعد كلمة ORDER BY
ساحاول تجربة الطريقة وا وافي بالنتيجة
أشهد أن لا اله إلا الله وأشهد أن محمد رسول الله
اللهم إجعلها آخر كلآمي
اللهم إجعلها آخر كلآمي
