سؤال

ما هي قبلة (احتفظ بها بطريقة بسيطة، غبية) لتذكر الشكل العادي في Boyce-Codd هو وكيفية أخذ طاولة غير طبيعية و BCNF IT؟

ويكيبيديامعلومات: ليست مفيدة للغاية بالنسبة لي.

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

المحلول

تعريف تاريخ كريس هو في الواقع جيد جدا، طالما فهمت ما يعنيه:

كل سمة

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

يجب أن تمثل حقيقة

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

حول المفتاح،

سمة واحدة خاصة، إنه مفتاح. المفتاح هو سمة يجب أن تكون فريدة من نوعها لجميع المعلومات في بياناتك ويجب ألا تتغير أبدا. اسمك الكامل ليس مفتاح لأنه يمكن أن يتغير. رقم التأمين الاجتماعي الخاص بك ليس مفتاحا لأنهم يتم إعادة استخدامهم. ليس لدى SSN Plus Budddate مفتاحا، حتى لو لم تتم إعادة استخدام الجمع، لأن السمة لا يمكن أن تكون مزيجا من حقائقين. GUID هو مفتاح. رقم تقضيه ولا يتم إعادة استخدامه أبدا هو مفتاح.

المفتاح بأكمله،

يجب أن يكون المفتاح وحده كافية [وضروري!] لتحديد القيم الخاصة بك؛ لا يمكنك الحصول على نفس البيانات التي تمثلها مفاتيح مختلفة، ولا يمكن أن تكون مجموعة فرعية من الأعمدة الرئيسية كافية لتحديد الحقيقة. افترض أن لديك دفتر عناوين مع مفتاح GUID وقيم الاسم والعنوان. لا بأس أن يظهر نفس الاسم مرتين مع مفاتيح مختلفة إذا كانت تمثل أشخاصا مختلفين ولا تكون "نفس البيانات". إذا تغيرت ماري جونز في المحاسبة اسمها إلى ماري سميث، ماري جونز في المبيعات لا يغير اسمها كذلك. من ناحية أخرى، إذا كان لدى ماري سميث وجون سميث نفس عنوان الشارع وهو نفس المكان نفسه، فلا يسمح بذلك. يجب عليك إنشاء زوج رئيسي / قيمة جديد مع عنوان الشارع ومفتاح جديد.

لا يسمح لك أيضا باستخدام المفتاح لعنوان الشارع الجديد الجديد كقيمة في دفتر العناوين لأنه الآن سيتم تمثيل مفتاح عنوان الشارع نفسه مرتين. بدلا من ذلك، عليك أن تجعل زوج مفتاح / قيمة ثالث مع قيم مفتاح دفتر العناوين ومفتاح عنوان الشارع؛ يمكنك العثور على عنوان الشارع لشخص من خلال مطابقة مفتاح الكتاب ومفتاح العنوان في هذه المجموعة من القيم.

ولا شيء سوى المفتاح

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

لذلك ساعدني، CODD.

نصائح أخرى

فيما يلي بعض مقتطفات مفيدة من صفحة ويكيبيديا النموذج العادي الثالث:

بيل كينت يحدد الشكل العادي الثالث بهذه الطريقة:

يجب أن توفر كل سمة غير مفتاحية "حقيقة حول المفتاح، والمفتاح بأكمله، ولا شيء سوى المفتاح".

تتطلب أن تعتمد السمات غير الرئيسية على "المفتاح بأكمله" أن الجدول في 2NF؛ يتطلب الأمر كذلك أن السمات غير الرئيسية تعتمد على "لا شيء سوى المفتاح" يضمن أن الجدول في 3NF.

CHRIS تاريخ تكييفات كريس ليمونيك لتحديد النموذج العادي Boyce-Codd:

"يجب أن تمثل كل سمة حقيقة حول المفتاح، والمفتاح بأكمله، ولا شيء سوى المفتاح". هنا يشعر المتطلبات بالقلق مع كل سمة في الجدول، وليس فقط السمات غير الرئيسية.

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

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

أنا غاضب "بويس كود النموذج العادي" وبعد ويكيبيديا هذه هي النتيجة الثانية. يعطي كتابي المدرسي تعريفا بسيطا للغاية من حيث أنظمة إدارة قواعد البيانات العلائقية:

يجب أن يكون الجانب الأيسر من كل FD غير صوتي سوبركي.

- "أنظمة قاعدة البيانات الكتاب الكامل" من قبل Garcia-Molina، Ullman و Widom.

أفضل إجابة غير رسمية لقد قرأتها هي أنه في BCNF، كل "سهم" في كل اعتماد وظيفي هو "سهم" من المفتاح المرشح. لا أتذكر المصدر، ولكن ربما كان هناك شيء كتب كريس التاريخ.

أساسا Boyce-Codd هو "النموذج العادي الخامس". يتم التعرف عليه بصريا عن طريق وجود "كيانات انسدادية" في نموذج البيانات، لأشياء مثل الأنواع (مثل الأدوار والحالة وحالة العملية وموقع الموقع ونوع الهاتف، إلخ). الكيانات الواسعة (الفرعية الفرعية) هي قوائم من مجموعات محدودة من القيم التي تصنف كيان مستوى فئة. لذلك قد يكون لديك نوع من نوع الهاتف ("المحمول"، "مكتب"، "VoIP") نوع حساب البريد الإلكتروني ("الأعمال"، "الشخصية"، "الألعاب")، الدور (مدير المشروع، طراز البيانات، نموذج السوبر) إلخ . فكرة أخرى مورفولوجية هي وجود أنواع فائقة، (AKA. فصول ماجستير، فائقة الطبقات، الكيانات التلوي) مثل الأطراف (الشركة الفرعية، شخص، إلخ).

انها في الأساس تصنيف التصنيفات ذهبت البرية (..no الفيديو ليس مثيرا) على مستوى الذرية أو الورقة؛ انظر تعليق بيل كاروين أعلاه للحصول على شرح تقني أكثر.

تعد طرازات مستوى CODD Boyce-Codd نماذج منطقية مفصلة بشكل أساسي، مشتقة من النماذج المفاهيمية الأكثر بساطة في الأعمال. ** عادة ما لا تنفذ Ver Batim في النموذج المادي، لأن تحسين PDM للأداء (أو البساطة الوظيفية) قد يؤدي إلى الكيانات الفائقة والكيانات الوزوبية التي تتم إدارة قوائم المنسدلة في UIS، أو في خلف المنطق في الكواليس في التطبيق، أو في قيود قاعدة البيانات والأساليب لفرض سلامة المرجعية. (أي قد ينتهي بك الأمر كجداول البحث في مخطط PDM، أو قد يتم التعامل معها بواسطة رمز وغير ممثلة في قاعدة البيانات).

لذلك - لماذا يفعلونهم إذا لم ينتهي بهم المطاف في PDM؟ لسبب ما السبب في بناء نموذج جيد 3NF قبل أن تقوم بتحسين "، بحيث يعكس بنية قاعدة البيانات العالم الحقيقي، وبالتالي أكثر استقرارا من KLudges النموذجية التي نرثها ويجب أن تفعل أعمال بطولية لجعل العمل كأعمال / عملائنا تغيير المتطلبات.

في كثير من الأحيان، من الأسهل الاستماع إلى الأمعاء الخاص بك وهذا سيأتي بشكل طبيعي. بشكل عام، إذا التقيت 3NF، فقد قابلت BCNF. لا يغطي هذا تحليلا مفصلا ل ERD أو له أمثلة، ولكن هناك ثلاثة عشر قواعد وفقا للمحمول. أجد أنه من الأفضل اتباع هذه القواعد ولكن تتذكر دائما أنه لا توجد طريقة واحدة صحيحة للقيام بالأشياء حتى تتبعها فضفاضة. لذا فيما يتعلق بإجراء RDBMS، فيما يلي القواعد:

http://www.87android.com/12-rules-of-relational-database-model-by-codd/

قد لا يجيب هذا على السؤال مباشرة، ولكن إذا كنت تسأل عن كيفية الوصول إلى BCNF أو طريقة سهلة لتذكرها، فأنت لا تفهم التطبيع جيدا بما فيه الكفاية. هذا ليس مصدر قلق. قواعد البيانات العلائقية تأخذ العديد من الأشكال وعدد قليل جدا من القيام بها بشكل جيد. أفضل شيء يمكنك القيام به هو معرفة ما يعنيه أن تكون علائقية، اتبع القواعد المذكورة أعلاه، ولا تقلق بشأن مستوى التطبيع. عملية التطبيع يلغي ازدواجية البيانات. كل مستوى أكثر من خلال الانتقال إلى هجرة التبعيات الوظيفية. ضع ذلك في الاعتبار وسوف تكون على ما يرام، والأمعاء والفكر الخاص بك سيفعل الباقي.

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