السلام عليكم ورحمة الله وبركاته:
من عنوان الموضوع على ما يبدو تبين لكم محور النقاش، (طبعاً إن كان هناك نقاش)، فأنا بخصوص هذا الموضوع محتار لدي رأيان لا أعلم أي الأصح منهما، وهناك أشخاص متعددين من حولي اختلفت آراهم حوله، مختصر الكلام:
الموضوع هو: ماذا بشأن القيم الثابتة التي نستخدمها ضمن قاعدة البيانات، مثال كأن تكون لدينا عدة جداول تحوي على حقول لها قيم ثابتة ولتكن مثلا قيم هذه الحقول (أريد، لا أريد، لا يهم).
الرأي الأول:
أن تكون هذه القيم ضمن جدول ضمن قاعدة البيانات تقرأ منه البيانات عند عملية الإضافة على قاعدة البيانات لتلك الجداول السابقة التي تحوي على هذه الحقول، وهذا الجدول الجديد إما أن نربطه مع هذه الجداول أو بدون ربط معهم، ولن يشكل لدينا مشكلة، بل سيسهل لنا عمليات كثيرة منها: أنه سيتم التخزين ضمن الجدوال السابقة أرقام والأرقام أقل حجماً تقريباً من السلاسل المحرفية، والبحث عن الرقم أسرع من البحث عن سلسلة محرفية، ولن نقوم نحن بأي عملية معالجة فقط مجرد استخدام للكائن BindingSource، وبهذا يمكننا أن نحقق التكاملة المرجعية.
الرأي الثاني:
لا داعي لأن ندخل بكل هذه المتاهات، فلا داعي لأي جدول لتخزينها به، يمكننا أن نخزن هذه القيم كقيم ثابتة ضمن list ليختار منها المستخدم متى يشاء، ونخزن القيمة بشكل فوري دون اللجوء إلى أرقام، وما إلى هنالك، طبعا السبب هو أن القيم ثابتة لذلك لا تخزن في جدول، بينما لو كانت تتغير باستمرار الجدول هو أفضل مكان لها.
ونقد الرأي الثاني الأول بأنه سيقوم بالربط ما بين الجداول وهذا يؤدي للبطء أثناء البحث، فكان جواب الأول: لا داعي للربط أثناء البحث فهنا سنبحث عن رقم، فقط عند الإظهار ستستبدل القيم تلقائياً كل قيمة رقمية بقيمتها الحقيقية.
وهناك من قال لو كان هناك قيمة وحيدة يجب أن تكون ضمن جدول ولو لوحدها!.
وهناك من قال لا داعي لتخزين أرقام فلا فارق هنا كبير بالسرعة لأن البيانات لن تتجاوز عشرات الملايين، وحجم قاعدة البيانات لا يهم!.
أرجو من الجميع إبداء الرأي إن أمكن، أو وضع المحاسن والمساوئ التي يراها، أو الطريقة التي يتبعها، أو أن يكون هناك رأياً قاطعاً من بعض الخبراء، وأرجو ألا يقصر الجميع.
وشكراً لكم ولا تؤاخذوني على الاطالة أخوكم