مخطط قاعدة بيانات

من ويكيبيديا، الموسوعة الحرة

مخطط قاعدة البيانات[1] هو نظام هيكلة قاعدة بيانات بالاعتماد على اللغة الشكلية المعتمد عليها هي الأخرى من قبل نظام إدارة قاعدة البيانات.

يُشير مصطلح «مخطط» إلى تنظيم البيانات على شاكلة مخطط أو بشكل أبسط تشييد قاعدة بيانات مُعينة من خلال تقسيمها إلى عدة جداول خاصة في حالة قواعد البيانات العلائقية أو على الأقل كتابة قاعدة بيانات من خلال مجموعة من الصيغ (الجمل) التي تُحقق طبعاً سلامة البيانات. يُمكن اعتبار قاعدة البيانات كهيكل من أجل التحقيق في لغة الاستعلام. يتحدّد مخطط قاعدة البيانات استنادا إلى مدير قاعدة البيانات الذي يتحكم في مجموعة من التطبيقات. يلعب مخطط قاعدة البيانات ينفس الدور الذي يلعبه منطق الرتبة الأولى. في قواعد البيانات العلائقية؛ يستطيع المخطط تحديد الجداول، الحقول، العلاقات، الفهارس، الحزم، الإجراءات، الدوال، الرتل، المشغلات، الأنواع ثم المتتاليات والمجلدات.[2]

متطلبات المخطط[عدل]

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

تداخل العناصر المحددة

يجب التركيز على عدم تداخل العناصر عند تأسيس مخطط لقاعدة البيانات معينة.

تمديد العناصر المُتداخلة
في حالة تداخل عنصرين أو أكثر؛ يجب تمديد تلك العناصر من أجل السماح بتمريرها من خلال مخطط قاعدة البيانات.
التطبيع
لا ينبغي على الكيانات المستقلة والعلاقات في مصدر البيانات أن تكون مجمعة معا في نفس العلاقة داخل مخطط قاعدة البيانات. ولا سيما المصدر الذي لا ينبغي أن يتحمّع مع عناصر المخطط وفي حالة ما حصل فيجب تحديد الكيانات المستقلة أو العلاقات.
الشرط الرابع
في حالة ما كان أي من عناصر مخطط قاعدة البيانات مُتداخلا ومٌترابطا فيجب إعادة تصميم مخطط قاعدة البيانات أو اعتباره غير مثالي.[3]

مثال[عدل]

لنفترض أننا نريد بواسطة قاعدة بيانات دمج اثنين من مخططات قواعد البيانات؛ السفر (Go-travel) ثم العودة من السفر (Ok-travel)

Go-travel لديه اثنين من العلاقات:

Go-flight(f-num, time, meal(yes/no))
Go-price(f-num, date, price)

(f-num هو رقم الرحلة)

Ok-travel لديه علاقة واحدة:

Ok-flight(f-num, date, time, price, nonstop(yes/no))

خصوصية قاعدة بيانات أوراكل[عدل]

في سياق قواعد بيانات أوراكل فإن المُخطط يلعب دورا في بنية تخزين البيانات.[4]

بشكل عام؛ يضم المخطط مجموعة من الكائنات وهي على الشكل التالي:[5]

ومن ناحية أخرى فإن المخطط لا يشمل الكائنات التالية:[6]

  • المستخدمين
  • السياقات
  • كائنات الدليل[7]

انظر أيضا[عدل]

المراجع[عدل]

  1. ^ معجم البيانات والذكاء الاصطناعي (PDF) (بالعربية والإنجليزية)، الهيئة السعودية للبيانات والذكاء الاصطناعي، 2022، ص. 60، QID:Q111421033
  2. ^ Imielinski، T.؛ Lipski، W. (1982). "A systematic approach to relational database theory". Proceedings of the 1982 ACM SIGMOD international conference on Management of data (SIGMOD '82). New York, NY: ACM: 8–14. DOI:10.1145/582353.582356.
  3. ^ Pottinger، P.؛ Berstein، P. (2008). "Schema merging and mapping creation for relational sources". Proceedings of the 11th international conference on Extending database technology: Advances in database technology (EDBT '08). New York, NY: ACM: 73–84. DOI:10.1145/1353343.1353357.
  4. ^ Ashdown، Lance؛ Kyte، Tom (فبراير 2010). Oracle Database Concepts 11g Release 2 (11.2). et al. Oracle Corporation. مؤرشف من الأصل في 2010-01-29. اطلع عليه بتاريخ 2010-04-14. A database schema is a logical container for data structures, called schema objects. Examples of schema objects are tables and indexes.
  5. ^ Oracle Database Concepts 10g Release 2 (10.2)Part Number B14220-02. مؤرشف من الأصل في 2019-05-07. اطلع عليه بتاريخ 2012-11-26. A schema is a collection of logical structures of data, or schema objects. A schema is owned by a database user and has the same name as that user. Each user owns a single schema. Schema objects can be created and manipulated with SQL.
  6. ^ Ashdown، Lance؛ Kyte، Tom (فبراير 2010). Oracle Database Concepts 11g Release 2 (11.2). et al. Oracle Corporation. مؤرشف من الأصل في 2010-01-29. اطلع عليه بتاريخ 2010-04-14. Other types of objects are also stored in the database and can be created and manipulated with SQL statements but are not contained in a schema. These objects include database users, roles, contexts, and directory objects.
  7. ^ Rybinski، H. (1987). "On First-Order-Logic Databases". ACM Transactions on Database Systems. ج. 12 ع. 3: 325–349. DOI:10.1145/27629.27630.