هل من الممكن لتعيين مفتاح مركب في nhibernate بطلاقة حيث نصف والمفتاح هو حقل الهوية في قاعدة البيانات؟

StackOverflow https://stackoverflow.com/questions/1615647

سؤال

وكما جاء في السؤال، هل من الممكن تعيين مفتاح مركب في nhibernate بطلاقة (أو غير بطلاقة أفترض) حيث واحد من الحقلين المستخدمة في المركب هو حقل الهوية؟

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

وذلك بفضل!

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

المحلول

إذا كان حقا على عمود هوية، ثم ما يضمن أن تكون فريدة من نوعها لكل سجل، أليس كذلك؟

وإذا كان الأمر كذلك، يمكنك تجاهل ID الإيجار بالكامل لأغراض رسم الخرائط. الحقول الهوية الخاصة بك وسوف تكون فريدة من نوعها في الجدول الأساسي الخاص بك - وسوف يشير المفتاح الخارجي الخاص بك يحتوي هذا رقم فريد من نوعه، وبالتالي فإن ID الإيجار غير ذي صلة في الواقع

وNHibernate لا يهتم حقا ما إذا كنت رسم مخطط قاعدة البيانات الخاصة بك بالضبط. لقد عملت مع قواعد البيانات تركة قبل حيث قمت تعريف قيد فريد على عمود غير مفتاح ثم قال NHibernate لاستخدام هذا كمفتاح أساسي - يعمل، وأنه يمكن تجنب بدقة جميع أنواع المروعة العلاقة مركب مفتاح تعيينات.

وفكروا. غير بديهية، ولكن من المرجح العمل.

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