قاعدة بيانات الأجوبة الأب لجميع نماذج البيانات
منزل اطرح سؤال أفضل الممارسات المجتمعات اتصل بنا نماذج البيانات بحث خريطة الموقع
Welcome to our Beginner's Guide to Data Modelling مرحبا بكم في دليل المبتدئين للنمذجة البيانات

INTRODUCTION : مقدمة :
This Tutorial is a Beginner's Guide to Data Modelling . هذا البرنامج التعليمي هو دليل المبتدئين للنمذجة البيانات.
With the help of Google's free translation service, I have produced versions of this Tutorial in Portuguese and Spanish . بفضل غوغل خدمة الترجمة الحرة ، ولقد أنتجت نسخ من هذا البرنامج التعليمي في البرتغالية والأسبانية.

Topics covered in this Tutorial include :- وشملت المواضيع في هذا البرنامج التعليمي ما يلي : --
  1. Creating Entities خلق كيانات
  2. Primary Keys المفاتيح الرئيسية
  3. Foreign Keys الخارجية كيز
  4. 1-to-Many Relationships (1) لكثير من العلاقات
  5. Hierarchies التسلسل الهرمي
  6. Inheritance الميراث
  7. Reference Data البيانات المرجعية

I have used the Dezign Data Modelling Tool to create the Data Models in this Tutorial. لقد استخدمت Dezign نمذجة البيانات أداة لخلق نماذج البيانات في هذا البرنامج التعليمي.
I chose Datanamic because it is powerful, flexible and affordable. اخترت Datanamic لأنها قوية ومرنة وميسرة.
Members of the Database Answers Community can purchase Dezign and benefit from a discount of 25% . أعضاء من قاعدة بيانات الجماعة الأجوبة يمكن شراء Dezign والاستفادة من خصم بنسبة 25 ٪.
In order to gain the benefit of this discount, all you have to do is send me an email with your Database Answers Community ID. من أجل الاستفادة من هذا الخصم ، كل ما عليك فعله هو ارسال رسالة الكترونية لي لديكم قاعدة بيانات الأجوبة هوية الجماعة.
I will then send you the order instructions. بعد ذلك سوف يرسل لك ترتيب التعليمات.

  • At the end of this Tutorial, we will have produced a Data Model, which is commonly referred as an Entity-Relationship Diagram , or 'ERD' في نهاية هذا البرنامج التعليمي ، وسيتعين علينا أن أنتج نموذج البيانات ، والذي يشار إليه بوصفه كيانا العلاقة بين الشكل البياني ، أو الشعبة '

    I hope you find this Tutorial interesting and helpful. وآمل أن تجد في هذا البرنامج التعليمي للاهتمام ومفيدة.
    Please email me and let me know. يرجى البريد الالكتروني لي واسمحوا لي أن أعرف.

  • GETTING STARTED : الابتداء :
    The area I have chosen for this Tutorial is a Data Model for a simple Order Processing System for Starbucks. المنطقة وقد اخترت لهذا البرنامج التعليمي هو نموذج البيانات لأمر بسيط لنظام تجهيز ستاربكس.
    I have done it this way because many people are familiar with Starbucks and it provides an application that is easy to relate to. وقد فعلت ذلك وبهذه الطريقة لان الكثير من الناس على دراية ستاربكس ويقدم الطلب إلى أن من السهل أن تتصل.
  • We think about the area we are going to Model. ونحن نفكر في مجال سنقوم النموذجي.
  • We can see Customers ordering Products,(Food and Drinkg and so on). يمكننا أن نرى الأمر المنتجات للعملاء ، (منظمة الأغذية وDrinkg وغير ذلك).
  • My Approach has three Steps :- أسلوبي ثلاث خطوات : --
    1. Establish the Scope of the Data Model تحديد نطاق من البيانات النموذجية
    2. Identify the 'Things of Interest' that are within the Scope, These will be called Entities . تحديد 'الامور الاهتمام' والتي تقع داخل النطاق ، وسوف يطلق على هذه الكيانات.
    3. Determine the Relationships between them. تحديد العلاقات بينهما.

    DECIDING THE SCOPE OF OUR DATA MODEL تحديد نطاق من نموذج بيانات
  • When we step inside, we see that Starbucks sells a wide range of Products, so our first task is to decide which of them should be included in our Data Model. عندما كنا داخل الخطوة ، فإننا نرى أن ستاربكس وتبيع مجموعة واسعة من المنتجات ، لذلك مهمتنا الأولى تتمثل في أن تقرر من ينبغي أن تدرج في نموذج البيانات.
  • Right now, we are interested only in something to eat and something to drink. الآن ، نحن فقط شيئا للأكل وشرب شيء.
  • Therefore, all the mugs and other items shown in this picture on the left, are outside the Scope of our Data Model, and are not 'Things of Interest'. ولذلك ، فإن جميع أكواب والبنود الأخرى المبينة في هذه الصورة على اليسار ، لا تدخل في نطاق لدينا نموذج البيانات ، وليس 'الامور من الفائدة.
  • واحدة من 270 ستاربكس المقاهي في مدينة نيويورك في عام 2007
    نموذج البيانات الصيغة 1
    1) CREATING ENTITIES 1) إنشاء كيانات
    1) Creating an Entity in Dezign 1) إنشاء كيانات في Dezign
    1. 1. Right-click on a blank area in the diagram انقر بزر الماوس الأيمن فوق منطقة فارغة في الرسم
    2. 2. From the drop-down list, choose Insert and Entity من القائمة المنسدلة ، وتدرج في اختيار الكيان
    3. 3. Check the 'PK' box for the Primary Key attribute, which will usually be the first one on the Entity. فحص 'PK' مربع لالسمة الأساسية الأولية ، والتي عادة ما تكون أول واحدة على الكيان.
    4. 4. Click on Close to save the results. اضغط على وثيقة لانقاذ النتائج.
    2) PRIMARY KEYS : 2) مفاتيح الابتدائية :
    1. At this Stage, we show only the Entities with no Relationships and minimum Attributes. and specify only the Primary Key and one 'details' field that will be replaced later on.. في هذه المرحلة ، وتبين لنا إلا الكيانات دون الحد الأدنى من العلاقات والسمات. وتحدد فقط الأولية الرئيسية وتفاصيل الميدانية التي سيتم استبدالها في وقت لاحق..
    2. The Primary Key field(s) should always be first. العنصر الرئيسي للميدان (ق) ينبغي أن يكون دائما في المقام الأول.
    3. You will notice that the first field in the Customers_version2 Table is the Customer_id. ستلاحظ أن الحقل الأول في الجدول Customers_version2 هو Customer_id.
    4. It has a 'PK' symbol beside it, which indicates that it is the Primary Key for the Table. انها 'PK' الرمز بجانبها ، مما يدل على أنه هو المفتاح الأساسي للجدول.
    5. The Primary Key is very important and is the way that we can recognise each individual record in the Table. العنصر الرئيسي للمهمة جدا ، وهذه هي الطريقة التي يمكننا أن تعترف كل سجل في الجدول.
    Creating a Primary Key in Dezign إنشاء المفتاح الأساسي في Dezign
    1. 1. Right-click on the Entity انقر باليمين على الكيان
    2. (2). Choose Attributes اختيار السمات
    3. 3. Check the 'PK' box for the Primary Key attribute, which will usually be the first one on the Entity. فحص 'PK' مربع لالسمة الأساسية الأولية ، والتي عادة ما تكون أول واحدة على الكيان.
    4. 4. Click on Close to save the results. اضغط على وثيقة لانقاذ النتائج.
    نموذج بيانات النسخة 2
    نموذج بيانات النسخة 3
    3) FOREIGN KEYS : 3) مفاتيح الخارجية :
  • Here we have added the Relationships between the Entities . هنا لدينا وأضاف أن العلاقات بين الكيانين.
    1. When this Primary Key is used in another Table, it is referred to as a'Foreign Key'. عندما يكون هذا هو المفتاح الأساسي المستخدم في آخر الجدول ، فإنه يشار إلى a'Foreign الرئيسية.
    2. We can see a good example in this diagram, where the customer_id appears in the Customers_Payment_Methods Table as a Foreign Key. يمكننا أن نرى مثالا جيدا في هذا الرسم البياني ، حيث customer_id يظهر في الجدول Customers_Payment_Methods بوصفه الخارجية الرئيسية.
    3. This is shown with an 'FK' symbol beside it ويظهر هذا مع 'كيه' الرمز بجانبها

  • Mandatory Key Fields إلزامية مجالات رئيسية
    1. A Foreign Key is usually mandatory , in other words, a value for a customer_id in the Customers_Payment_Methods Table must correspond to an actual value of the customer_id in the Customers_Version_1 Table. وزارة الخارجية الرئيسية التي عادة ما تكون إلزامية ، وبعبارة أخرى ، لcustomer_id قيمة في الجدول Customers_Payment_Methods يجب أن تقابل أي القيمة الفعلية للcustomer_id في Customers_Version_1 الجدول.
    2. This is shown in the diagram by the short straight line at the end of the dotted line close to the Customers Table. هذا هو مبين في الرسم البياني على المدى القصير من خلال خط مستقيم في نهاية الخط المتقطع الى الجدول العملاء.
    Foreign Keys in Dezign كيز الخارجية في Dezign
    1. 1. Foreign Keys are created automatically when you make a Relationship between two Entities. كيز الخارجية تنشأ تلقائيا عند تقديم العلاقة بين الكيانين.
    2. 2. I recommend that you move the field up in the Entity so that it takes it place alphabetically among the Key fields. ننصحك بأن التحرك الميداني في الكيان لكي يأخذ مكان ذلك حسب الترتيب الأبجدي من بين المجالات الرئيسية.
    To do this, right-click on the Entity choose the Attributes option, then click on the up or down arrow on the right-hand side. وللقيام بذلك ، انقر بزر على الكيان اختيار الخيار السمات ، ثم انقر على السهم صعودا وهبوطا على الجانب الأيمن.
  • 4) ONE-TO-MANY RELATIONSHIPS : 4) واحد إلى والعديد من العلاقات :
  • One-to-Many Relationships واحدة لكثير من العلاقات
    1. A Customer can have more than one Payment_Method, for example, American Express or Cash. ويمكن للعميل أكثر من Payment_Method ، على سبيل المثال ، أمريكان اكسبريس أو النقدية.
    2. In other words, we would say that the Relationship is optional at the Customers_Payment_Methods Table end. وبعبارة أخرى ، لقلنا إن العلاقة اختياري في نهاية الجدول Customers_Payment_Methods.
    3. This is shown by the symbol that has three small lines at that end of the Relationship dotted line, which is referred to as Crow's Feet . والدليل على ذلك أن الرمز ثلاثة خطوط صغيرة في ذلك نهاية للعلاقة الخط المتقطع ، الذي يشار إليه باسم كرو أقدام.

  • Optional Key Fields اختياري مجالات رئيسية
    1. Not every Customer will have a Payment_Method. ليس كل العملاء سيكون لها Payment_Method. In general, they would but we need to allow for situations where Customers change their minds and don't buy anything. بشكل عام ، فإنها ولكننا في حاجة للسماح للحالات التي يكون فيها العملاء في تغيير رأيهم وعدم شراء اي شيء.
    2. In other words, we would say that the Relationship is optional at the Customers_Payment_Methods Table end. وبعبارة أخرى ، لقلنا إن العلاقة اختياري في نهاية الجدول Customers_Payment_Methods.
    3. This is shown by the little 'O' at that end of the Relationship dotted line. هذا هو القليل الذي تبديه يا 'في نهاية العلاقة خط من نقاط نافرة.
  • نموذج بيانات النسخة 4
    المنتجات
    5) HIERARCHIES : 5) التدرجات :
    At this Stage, we add Reference Data. في هذه المرحلة ، ونحن نضيف بيانات المرجعية.
  • This diagram shows how the hierarchies of Products and Product Types that we have just discussed are shown in our Entity-Relationship Diagram . هذا الرسم البياني يبين كيف أن التسلسل الهرمي للمنتجات وأنواع المنتجات التي لدينا فقط وناقش وترد في الشكل البياني العلاقة بين الكيانين.


  • Rabbits Ears الأرانب الآذان
  • You will notice that the table called 'Product_Types_v1' has a dotted line coming out on the right-hand side and going back in again on the top-right corner. ستلاحظ أن الجدول 'Product_Types_v1' خط من نقاط نافرة الخروج على الجانب الأيمن وتعود مرة أخرى في أعلى الزاوية اليمنى.
  • Data Analysts call this a Reflexive Relationship, or informally, simply 'Rabbits Ears'. بيانات محللون أن هذه الدعوة إنعكاسي العلاقة ، أو غير رسمية ، وذلك ببساطة 'الأرانب الآذان.
  • In plain English, we would say that the Table is joined to itself and it means that a record in this Table can be related to another record in the Table. وبلغة إنكليزية ، لقلنا إن الجدول انضم لنفسها وهو ما يعني أن مستوى قياسي في هذا الجدول ويمكن أن تتصل قياسيا آخر في الجدول.
  • This approach is how we handle the situation where each Product can be in a hierarchy and related to another Product. هذا النهج هو كيفية التعامل مع الحالة التي يكون فيها كل من المنتج ويمكن في التسلسل الهرمي ، وآخر للمنتجات ذات الصلة.
  • For example, a Product called Panini could be in a Product Sub-Category called 'Miscelleneous Sandwiches' which could be a higher Product Category called 'Cold Food', which itself could be in a higher Product Super-Category called simply 'Food'. على سبيل المثال ، دعا المنتج Panini يمكن للمنتجات في فئة فرعية تسمى 'Miscelleneous السندويتشات' التي يمكن أن تكون أعلى من منتجات الفئة 'الأغذية الباردة' ، التي يمكن أن تكون في أعلى المنتج السوبر بين الفئة دعا ببساطة الاغذية.
  • Next time you go into Starbucks, take a look at the borad behind the counter and try to decide how you design the Products area of the Data Model. في المرة القادمة التي تذهب الى ستاربكس ، وإلقاء نظرة على borad المضاد وراء محاولة للبت في كيفية تصميم المنتجات المجال للنموذج البيانات.
  • You should pay special attention to the little 'zeros' at each end of the dotted line. عليك أن تولي اهتماما خاصا لتذكر 'صفر' في نهاية كل من خط من نقاط نافرة.
  • These are how we implement the fact that the 'Parent Product Type Code' is optional, because the highest level will not have a Parent. وهذه هي الطريقة التي ننفذ كون 'دلاولا نوع المنتج قانون' اختياري ، لأن أعلى مستوى لن يكون أحد الوالدين.
  • 6) INHERITANCE : 6) والميراث :
  • Food and Drink are specific examples of the more general Thing called a Product. الطعام والشراب ومن أمثلة محددة الأعم الشيء يسمى المنتج.
  • They inherit some common attributes from the Product, and also have some of their own. وهي وراثة بعض الصفات عام من المنتج ، وأيضا بعض من جانبهم.
  • For example, Food can contain Nuts but Drink do not contain nuts, but both have a Product Name. على سبيل المثال ، يمكن أن يحتوي على أغذية البندق الشراب ولكن لا تحتوي على المكسرات ، ولكن كل من يكون له اسم المنتج.


  • The unusual symbol in the middle of the diagram, composed of a circle with two small lines underneath it is how Inheritance is shown using the particular Data Modelling Tool that I am using,which is called Dezign. رمز غير العادية في منتصف المخطط ، الذي يتألف من دائرة صغيرة مع اثنين من خطوط تحت ومن الميراث ويبين كيفية استخدام أداة نمذجة البيانات وخاصة أن أستعمل الذي دعا Dezign.
  • Inheritance is a very important topic when you are creating a Data Model. الإرث هو موضوع في غاية الأهمية عندما كنت تقوم بإنشاء نموذج البيانات.
  • In plain English, we would say that Inheritance occurs where a Parent-Child relationship exists between Things of Interest (or Entities). وبلغة إنكليزية ، لقلنا إن الإرث يقع فيها الآباء والأبناء وجود علاقة بين أشياء من الفائدة (أو الجهات).
  • You can ask the simple 'Is-a' question - in this case, if we ask 'Is a Book a Product' then clearly the answer is 'Yes' so we think there is an Inheritance relationship between them. يمكنك أن تطلب من مجرد 'هل وهو سؤال -- في هذه الحالة ، إذا كان لنا أن نسأل هل كتاب منتج' ثم من الواضح أن الجواب هو نعم حتى نرى وجود أي علاقة بين الإرث.
  • In the example of Inheritance shown in this diagram, we can see that all Products have Names and Descriptions. في الميراث على سبيل المثال يظهر في هذا الرسم البياني ، يمكننا أن نرى أن جميع أسماء المنتجات ووصف لها. Therefore, Books, Food and Drink will inherit these characteristics from the parent Product. ولذلك ، كتب للاغذية والمشروبات سيرث هذه الخصائص من الأم المنتج.
  • However, each type of Product will have specific characteristics that it does not share with other types of Products. غير أن كل نوع من المنتجات سيكون لها خصائص محددة ، أنها لا تتقاسم مع أنواع أخرى من المنتجات. For example, Books have ISBNs and Authors, but Food and Drink do not. على سبيل المثال ، قد كتب ISBNs والمؤلفين ، ولكن للاغذية والمشروبات لا.
  • One of the important things in your Data Model is to be sure you have identified all the Inheritance relationships. من أهم الأمور في نموذج البيانات الخاص بك هي التأكد من وحددت كل الإرث العلاقات.
  • However, from many years of experince as a DBA, I should point out that relationship is often blurred in a real physical Database because it can be clumsy to implement. ومع ذلك ، من سنوات طويلة من experince باعتبارها التسوية المتصلة بعبء الديون ، وأود أن أشير إلى أن العلاقة واضحة في كثير من الأحيان في قاعدة بيانات مادية حقيقية لأنه لا يمكن لتنفيذ الخرقاء.
  • I sometimes find myself showing Inheritance in a Logical Data Model which then disappears when I design the Physical Database, which is what ultimately becomes the Database. أنا أحيانا أجد نفسي في الميراث يظهر نموذج البيانات المنطقية ، ثم يختفي عندما المادية وتصميم قواعد البيانات ، وهو ما أصبح قاعدة البيانات في نهاية المطاف.
  • المنتجات (النسخة 2) يظهر الإرث
    7) REFERENCE DATA : 7 (البيانات المرجعية :
    • This diagram shows Address Types, which are an example of Reference Data. ويظهر الرسم البياني لهذا العنوان أنواع ، وهي مثال للبيانات المرجعية.
    • This kind of data has the following characteristics :- هذا النوع من البيانات الخصائص التالية : --
      1. it doesn't change very much فإنه لا يغير كثيرا
      2. it has a relatively small number of values, usually less than a few dozen and never more than a few hundred. انه عدد صغير نسبيا من القيم ، وعادة ما تكون أقل من بضع عشرات من وأبدا أكثر من بضع مئات.
      3. Therefore we can show it with a Code as a Primary Key. ولذلك يمكننا أن تظهر أنها مع القانون باعتباره المفتاح الأساسي.
      4. Data in Reference Data Tables can be used to populate drop-down lists for Users to select from. البيانات الواردة في الجداول المرجعية للبيانات يمكن استخدامها لإغناء القوائم المنسدلة لاختيار من المستخدمين.
      5. In this way, it is used to ensure that all new data is valid. وبهذه الطريقة ، وتستخدم لضمان أن تكون جميع بيانات جديدة صالحة.
    • Standards المعايير
      • In the Address Table, you will see a field called 'iso_country_codes'. في عنوان الجدول ، سترى حقل يسمى 'iso_country_codes'.
      • iso stands for the 'International Standards Organisation'. وتقف المنظمة الدولية للتوحيد القياسي ل'منظمة المعايير الدولية.
      • Where possible, it's always good to use national or international standards. حيثما أمكن ذلك ، انه من الجيد دائما أن استخدام معايير الوطنية أو الدولية.

        Customer Addresses عناوين العملاء
      • This is a general and flexible approach to handling Addresses in our Data Model. هذا هو عام ومرن لمعالجة الكلمات في نموذج البيانات.
      • We have a separate Address Table, which allows us to have more than one Address for any Customer very easily. لدينا خطاب منفصل الجدول ، والتي تسمح لنا أكثر من أي عنوان العميل بكل سهولة.
      • This design also has some other benefits :- هذا التصميم أيضا بعض المزايا الأخرى : --
        1. We can accomodate more than one person at the same Address. We need to do this because different members of a family may sign-up separately with Amazon. يمكننا أن تستوعب أكثر من شخص واحد في نفس العنوان. علينا أن نفعل ذلك لأن مختلف أفراد الأسرة ويمكن الاشتراك بشكل منفصل مع الأمازون.
        2. With a separate table of Addresses, we can easily use commercial software to validate our Addresses. To find this kind of software, simply Google for "Address Validation Software". I have used QAS with great success in the past. With this approach, we can always be sure that we have 100% good Address data in our Database. مع جدول مستقل من العناوين ، يمكننا بسهولة باستخدام البرمجيات التجارية للمصادقة على هذه العناوين لإيجاد مثل هذا النوع من البرمجيات ، وذلك ببساطة لجوجل "التحقق من صحة العنوان البرمجيات". QAS لقد استخدمت بنجاح كبير في الماضي ، وبهذا النهج ، ونحن يمكن دائما على يقين من أن لدينا 100 ٪ جيد العنوان البيانات في قاعدة بياناتنا.
    الأمازون العملاء -- الإصدار 2
    بيانات على مستوى عال لدروس نموذجية
    8) TOPICS IN THIS TUTORIAL : 8) مواضيع في هذه الدورة التعليمية :
      During this short Tutorial,we have covered the following Topics :- خلال هذا البرنامج التعليمي وباختصار ، علينا أن المواضيع التالية : --
      1. Creating Entities خلق كيانات
      2. Primary Keys المفاتيح الرئيسية
      3. Foreign Keys الخارجية كيز
      4. 1-to-Many Relationships (1) لكثير من العلاقات
      5. Hierarchies التسلسل الهرمي
      6. Inheritance الميراث
      7. Reference Data البيانات المرجعية
  • If you would like to see other Topics included, please let me know . إذا كنت تود أن ترى وشملت المواضيع الأخرى ، يرجى إبلاغي. Tutorial. الدورة التعليمية.

  • 9) PLEASE EMAIL ME 9) الرجاء الكتابة الأوسط
  • I hope you have found this Tutorial interesting and useful. وآمل أن تكونوا قد وجدت هذا البرنامج التعليمي ومفيد.
  • Please email me with your questions or suggestions so I can improve this first draft Tutorial. يرجى البريد الالكتروني لي لديكم أسئلة أو اقتراحات لذلك يمكن أن يحسن هذا المشروع الأول دروس.

  • If you want to try the Dezign Data Modelling Tool , you can download it from the Datanamic Web Site . إذا كنت ترغب في محاكمة Dezign أداة نمذجة البيانات ، يمكنك تحميل البرنامج من الموقع Datanamic.

    Good luck with creating your first Data Model ! حظا سعيدا مع إنشاء أول نموذج البيانات الخاص بك!

    Barry Williams باري ويليامز
    Principal Consultant استشاري الرئيسية
    Database Answers Ltd. قاعدة بيانات الإجابات المحدودة
    London, England لندن (انكلترا)


  • منزل اطرح سؤال أفضل الممارسات المجتمعات اتصل بنا نماذج البيانات بحث خريطة الموقع

    © DatabaseAnswers.org 2008 © 2008 DatabaseAnswers.org