مرحباً
لدي مشروع لبناء تطبيق انترنت و سيكون هناك عدد كبير من المستخدمين, يزيد عن مليون, مجرد توقع! أو لنقل أني متفائل :)
لذلك أحاول تصميم قاعدة البيانات بأفضل شكل حتى لا تحدث مشاكل في المستقبل, وأريد رأيكم
طبعا كل زائر سيدخل التطبيق سيسجل اسمه بعض المعلومات عنه فقط!
وهذه الأسكيما
@ الاقتراح الأول
|----------------------------------------------------------------------------------------|
|name_pk_|password|region|country|district|city|user_language|moreinfo|
|----------------------------------------------------------------------------------------|
|.......................................................................................................|
|----------------------------------------------------------------------------------------|
يعني أن تكون كل معلومات العضو في جدول واحد وخلاص
@ الاقتراح الثاني
نفس الأول بصراحة لكن الحقول region و country و district و city و user_language ستكون كجداول منفصله تماما, وأقوم بربطها ببعضها و بالجدول الرئيسي بعد ذلك بمفتاح غريب(وموغريب إلا الشيطان).
أي كلهم مربوطين مع الجدول الرئيسي
و city مربوط مع district و country
و district مربوط مع country
و country مربوط مع region
@ أو هل هناك طريقة أفضل لتصميم قاعدة البيانات هذه
الهدف هو الكفاءة و إمكانيه عمل بحث بعد ذلك باستخدام هذه الحقول region و country و district و city و user_language
يعني اعرض المسجلين الموجودين في region معين أو country معين أو district معين أو city معين وكذلك تحديد لغة من يتم عرضهم من المستخدمين user_language مثلا أريد العرب فقط
وكذلك عرض country الموجودة في region معين. و district الموجودة في country معين . وأخيرا city الموجودة في country معين.
@ هل أحتاج لأن أقلق حول هذا الأمر , هل هناك طريقة لأختبار قاعدة البيانات قبل تنزيلها للعمل الفعلي
شكرا