تصميم قاعدة البيانات

**تصميم قاعدة البيانات** هو تنظيم البيانات وفقًا لنموذج قاعدة البيانات. يحدد المصمم البيانات التي يجب تخزينها وكيفية ترابط عناصر البيانات. باستخدام هذه المعلومات، يمكن البدء في ملائمة البيانات مع طراز قاعدة البيانات.

يتضمن تصميم قاعدة البيانات تصنيف البيانات وتحديد العلاقات المتبادلة. هذا التمثيل النظري للبيانات يسمى *[[أنطولوجية (علم المعلومات)|الأنطولوجيا]]*. الأنطولوجيا هي النظرية الكامنة وراء تصميم قاعدة البيانات.

## تحديد البيانات المراد تخزينها
في معظم الحالات، يكون الشخص الذي يقوم بتصميم قاعدة بيانات هو شخص يتمتع بخبرة في مجال تصميم قاعدة البيانات، بدلاً من خبرة في المجال الذي يتم منه استخراج البيانات التي يتم تخزينها، مثل المعلومات المالية والمعلومات البيولوجية وغيرها. لذلك، يجب تحديد البيانات التي سيتم تخزينها في قاعدة البيانات بالتعاون مع شخص لديه خبرة في هذا المجال، ومن يدرك البيانات التي يجب تخزينها داخل النظام.

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

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

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

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

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

## مخطط ER (نموذج العلاقة بين الكيانات)
تصغير|320x320بك| نموذج لتخطيط علاقة الكيان
تتضمن تصميمات قواعد البيانات أيضًا مخططات ER (طريقة الكيانات والعلاقات). مخطط ER هو مخطط يساعد على تصميم قواعد البيانات بطريقة فعالة.

عادة ما يتم تصميم السمات في المخططات ER كرسالة بيضاوية تحمل اسم السمة، مرتبطة بالكيان أو العلاقة التي تحتوي على السمة.

## اقتراح عملية تصميم لـ Microsoft Access

# **تحديد الغرض من قاعدة البيانات** - وهذا يساعد على التحضير للخطوات المتبقية.
# **البحث عن المعلومات المطلوبة وتنظيمها** - اجمع كل أنواع المعلومات لتسجيلها في قاعدة البيانات، مثل اسم المنتج ورقم الطلب.
# **قسّم المعلومات إلى جداول** - قسّم عناصر المعلومات إلى كيانات أو مواضيع رئيسية، مثل المنتجات أو الطلبات. كل موضوع ثم يصبح الجدول.
# **حول عناصر المعلومات إلى أعمدة** - حدد المعلومات التي يجب تخزينها في كل جدول. يصبح كل عنصر حقلًا، ويتم عرضه كعمود في الجدول. على سبيل المثال، قد يشتمل جدول الموظفين على حقول مثل الاسم الأخير وتاريخ التوظيف.
# **حدد المفاتيح الأساسية** - اختر المفتاح الأساسي لكل جدول. المفتاح الأساسي هو عمود، أو مجموعة من الأعمدة، تُستخدم لتحديد كل صف بشكل فريد. مثال قد يكون معرف المنتج أو معرف الطلب.
# **إعداد علاقات الجدول** - انظر إلى كل جدول وحدد كيفية ارتباط البيانات في أحد الجداول بالبيانات الموجودة في الجداول الأخرى. أضف حقولًا إلى الجداول أو أنشئ جداول جديدة لتوضيح العلاقات، حسب الضرورة.
# **تحسين التصميم** - تحليل التصميم بحثًا عن الأخطاء. إنشاء الجداول وإضافة بعض السجلات من بيانات العينة. تحقق مما إذا كانت النتائج تأتي من الجداول كما هو متوقع. إجراء تعديلات على التصميم، حسب الحاجة.
# **تطبيق [[تسوية قاعدة البيانات|قواعد التسوية]]** - تطبيق قواعد تطبيع البيانات لمعرفة ما إذا كانت الجداول منظمة بشكل صحيح. قم بإجراء تعديلات على الجداول، حسب الحاجة.

## المراجع

## روابط خارجية

* http://www.sqlteam.com/article/database-design-and-modeling-fundamentals
* https://support.office.com/en-US/article/Database-design-basics-EB2159CF-1E30-401A-8084-BD4F9C9CA1F5
* أساسيات تطبيع قاعدة البيانات  بواسطة مايك تشابل (About.com)
* مقدمة تطبيع قاعدة البيانات ، الجزء 2 
* 
* 
* العلائقية تصميم قاعدة بيانات تعليمي
* 

تصنيف:قواعد بيانات
تصنيف:نظم إدارة قواعد البيانات
تصنيف:نظرية قواعد البيانات