لقد طُلب مني مشروع لإدارة المعلومات لشركة تتعامل مع السيارات، قاعدة البيانات فيها معلومات كثيرة عن السيارة ورقمها ورقم المحرك وسعته والشركة الصانعة ...الخ، الخ، الخ، وهذه المعلومات قد تتكرر للسيارة الواحدة، الحقيقة لقد عملت المشروع وإنتهيت منه وقد واجهت قضية في المشروع في حينه وأحببت أن أسمع رأيكم إن كان هناك طريقة أفضل لحل القضية، وإختصاراً ولتسهيل القضية سأفترض بأن قاعدة البيانات مكونة من جدول واحد وثلاثة أعمدة لا غير ( رقم السيارة، رقم المحرك، إسم الشركة الصانعة)، وأريد هنا وعند تشغيل البرنامج أن يقوم البرنامج بعمل loop في الجدول فإن كان هناك row في الجدول يشابه آخراً يقوم بأخذ أحدهما فقط (وإظهاره في داتاسيت للتعامل معه لاحقاً)...وللتبسيط الملل فإن المعلومات في الجدول هي كالتالي:
رقم السيارة رقم المحرك الشركة الصانعة
45 555 Toyota
232 343 Nissan
45 555 Toyota
لاحظ بأن ال row الأول والثالث يعودان لنفس السيارة، في هذه الحالة أنا أريد فقط أخذ row واحد منهما...
الحلّ الذي أعتمدته هو أن أقوم بتحميل جميع الجدول في داتاسيت وبعض ذلك أعمل array من نوع string عدد عناصرها يساوي عدد ال rows في الجدول، وبعد ذلك قمت بجعل العنصر الأول من المصفوفة هو حاصل لجمع الأعمدة الثلاثة من الصف الأول للجدول، أي بالشكل التالي:
Toyota55545
أما العنصر الثاني من المصفوفة فهو:
Nissan343232
وبعد ذلك سأقوم بالتعامل مع المصفوفة وطرح ما تساوى من عناصرها.
هذا هو الحل الوحيد الذي توصلت إليه، هل هناك من حل أفضل أو أسرع؟ وهل يوجد عندنا طريقة في الفيجوال بيسك نيت لمقارنة صفّين من جدول ما؟؟؟؟
أرجو تعليقاتكم الكريمة
