سؤال

أعلم أن المفاتيح الأولية البديلة موصى بها بشكل عام على المفاتيح الأساسية الطبيعية ، ولكن هل هناك أي حجج لصالح المفاتيح الأولية البديلة عندما يتعلق الأمر بأسماء المستخدمين؟

هل كانت مفيدة؟

المحلول

إذا كنت لا ترغب في الحصول على أسماء مستخدمة مكررة ، قم بإنشاء أ UNIQUE constraint.

ماذا إذا DWong1145 يريد تغيير اسم المستخدم؟ هل ستجعل جميع علاقات قاعدة البيانات UPDATE CASCADE?

نصائح أخرى

لا, ، يجب استخدم اسم المستخدم فقط كمفتاح/ثابت فريد. يمكن تغيير اسم المستخدم ، فقط ومثال: قد يكون علامة تجارية ويطلب منك المالك إسقاطها.

إنه مرشح جيد إلى حد ما ، ومع ذلك عليك أن تفكر إذا كنت تريد حقًا القيام بذلك. على سبيل المثال ، لديك مستخدم يحمل اسم مستخدم معين ، ثم يتم "حذف" المستخدم (أو تم وضع علامة عليه كما تم حذفه). لذلك ، لا يوجد في الواقع أي سبب لعدم السماح بإنشاء مستخدم آخر بنفس اسم المستخدم ، لكنه "تم أخذه بالفعل" ، لأنه مفتاح أساسي.

من وجهة نظر العميل ، تراهن. لا أريد أن يكون اسم المستخدم الخاص بي DWONG1145.

من العيوب الكبيرة المتمثلة في وجود سلسلة كمفتاح أساسي ، بغض النظر عما إذا كان اسم مستخدم أو أي شيء آخر ، هو أن جميع أعمدة المفاتيح الخارجية التي تشير إلى الجدول يجب أن تكون أيضًا سلاسل ، والتي هي أبطأ وتضيع مساحة أكبر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top