Databases Lecture Notes - MCI - 2025-2024 PDF

Document Details

AstonishingRomanArt

Uploaded by AstonishingRomanArt

The Higher Institute of Marketing, Trade and Information Systems

2025

Dr. Mariam Samy

Tags

databases database management systems database design information systems

Summary

These lecture notes cover various aspects of databases, including their role in supporting internet and e-commerce applications, database management systems (DBMS), and database design techniques. The document details different database architectures such as single-tier and three-tier. The notes will provide information on how to structure and interact with databases, from fundamental concepts to more advanced topics. This document also includes the names of different concepts and models such as Entity Relationship Diagrams (ERD).

Full Transcript

‫المعهد العاىل للتسويق والتجارة ونظم المعلومات‬ ‫‪The Higher Institute of Marketing, Commerce, and Information Systems‬‬ ‫قواعد البيانات‬ ‫‪Databases‬‬ ‫المستوى الثالث...

‫المعهد العاىل للتسويق والتجارة ونظم المعلومات‬ ‫‪The Higher Institute of Marketing, Commerce, and Information Systems‬‬ ‫قواعد البيانات‬ ‫‪Databases‬‬ ‫المستوى الثالث‬ ‫الفصل الدراسى األول‬ ‫‪Dr. Mariam Samy‬‬ ‫‪2025 - 2024‬‬ ‫المعهد العاىل للتسويق والتجارة ونظم المعلومات‬ ‫‪The Higher Institute of Marketing, Commerce, and Information Systems‬‬ ‫‪Lecture 2‬‬ ‫المحاضرة الثانية‬ ‫❑ دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة االلكترونية‬ ‫❑ نظم إدارة قواعد البيانات ‪ DBMS‬وأهميتها‬ ‫❑ بناء قواعد البيانات‬ ‫❑ مخطط عالقات الكيانات‬ ‫المعهد العاىل للتسويق والتجارة ونظم المعلومات‬ ‫‪The Higher Institute of Marketing, Commerce, and Information Systems‬‬ ‫‪Lecture 2‬‬ ‫نواتج التعلم المستهدفة‬ ‫❑ يشرح دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة االلكترونية‬ ‫❑ يشرح نظم إدارة قواعد البيانات ‪ DBMS‬وأهميتها‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ إدارة البيانات الضخمة ‪Big Data Management‬‬ ‫▪ تطبيقات اإلنترنت والتجارة اإللكترونية تتعامل مع كميات هائلة من البيانات‬ ‫يوميا‪ ،‬مثل معلومات المستخدمين‪ ،‬الطلبات‪ ،‬المنتجات‪ ،‬والمدفوعات‪.‬‬ ‫ً‬ ‫▪ قواعد البيانات مثل ‪ NoSQL‬والعالئقية ‪ ،RDBMS‬تتيح إدارة وتخزين هذه‬ ‫البيانات بطريقة منظمة‪ ،‬مما يسهل استرجاعها وتحليلها في الوقت المناسب‪.‬‬ ‫❑ أداء واستجابة عالية ‪High Performance and Scalability‬‬ ‫أمر بالغ األهمية لتوفير تجربة مستخدم جيدة‪.‬‬ ‫▪ األداء السريع ًا‬ ‫▪ قواعد البيانات المتقدمة تتيح توزيع البيانات عبر خوادم متعددة لتقليل زمن‬ ‫االستجابة وزيادة قدرة النظام على معالجة آالف الطلبات في وقت واحد‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ إدارة المستخدمين وتسجيل الدخول ‪User Management and -‬‬ ‫‪Authentication‬‬ ‫▪ تستخدم منصات التجارة اإللكترونية قواعد البيانات لتخزين معلومات‬ ‫المستخدمين مثل بيانات التسجيل‪ ،‬تسجيل الدخول‪ ،‬وكلمات المرور‪.‬‬ ‫▪ كما تعتمد على قواعد البيانات في إدارة الصالحيات والوصول إلى المحتوى‬ ‫المخصص لكل مستخدم‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ إدارة الطلبات والمخزون ‪Order and Inventory Management -‬‬ ‫▪ تعتمد التجارة اإللكترونية على قواعد البيانات لتتبع المخزون‬ ‫▪ تحديث حالة الطلبات في الوقت الفعلي ومراقبة العمليات اللوجستية‪.‬‬ ‫بناء على‬ ‫وتحديثه‬ ‫▪ توفر هذه األنظمة دقة عالية في تتبع المخزون‬ ‫ً‬ ‫المبيعات الفعلية‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ معالجة المدفوعات ‪Payment Processing -‬‬ ‫دور في تخزين ومعالجة بيانات الدفع بطرق آمنة‪.‬‬ ‫▪ قواعد البيانات تلعب ًا‬ ‫▪ من خالل االعتماد على معايير أمنية مشددة مثل التشفير ‪Encryption‬‬ ‫وإدارة المعامالت ‪ ،Transaction Management‬يمكن التأكد من سالمة‬ ‫عمليات الدفع عبر اإلنترنت‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ تحليل البيانات والتخصيص ‪Data Analysis and Personalization -‬‬ ‫▪ قواعد البيانات تسمح بتخزين وتحليل بيانات المستخدمين وسلوكهم الشرائي‪.‬‬ ‫▪ مما يساعد مواقع التجارة اإللكترونية على تقديم توصيات مخصصة (مثل‬ ‫بناء على تاريخ التصفح أو الشراء)‪ ،‬وتحسين‬ ‫ً‬ ‫العميل‬ ‫تهم‬ ‫قد‬ ‫التي‬ ‫المنتجات‬ ‫الحمالت التسويقية‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ أمن البيانات ‪Data Security -‬‬ ‫▪ حماية بيانات المستخدمين هي أحد أكبر التحديات في تطبيقات اإلنترنت‬ ‫والتجارة اإللكترونية‪.‬‬ ‫▪ قواعد البيانات توفر آليات أمان متقدمة مثل التشفير وإدارة الصالحيات‬ ‫لضمان حماية البيانات من االختراقات أو االستخدام غير المصرح به‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ إدارة المحتوى ‪Content Management‬‬ ‫▪ تستخدم قواعد البيانات في إدارة المحتوى المعروض على مواقع اإلنترنت‬ ‫والتجارة اإللكترونية‪ ،‬مثل المعلومات المتعلقة بالمنتجات‪ ،‬أو الصور‪ ،‬أو‬ ‫مقاطع الفيديو‪ ،‬مما يسهل عمليات التحديث الدورية للموقع‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ التكامل مع أنظمة الدفع والشحن ‪Integration with Payment and -‬‬ ‫‪Shipping Systems‬‬ ‫▪ قواعد البيانات تساعد في التكامل مع بوابات الدفع وأنظمة الشحن‪.‬‬ ‫▪ حيث يتم تخزين معلومات الدفع والتسليم في قاعدة البيانات لسهولة متابعتها‬ ‫من قبل المستخدمين ومزودي الخدمة‪.‬‬ ‫دور قواعد البيانات فى دعم تطبيقات االنترنت والتجارة اإللكترونية‬ ‫❑ ضمان توافر البيانات ‪Data Availability and Reliability -‬‬ ‫▪ قواعد البيانات الحديثة توفر آليات لضمان توافر البيانات واستم اررية الخدمة‪،‬‬ ‫حتى في حالة تعطل بعض الخوادم أو حدوث مشكالت تقنية‪ ،‬وذلك من خالل‬ ‫تقنيات النسخ االحتياطي والتوزيع الجغرافي للبيانات‪.‬‬ ‫نظم إدارة قواعد البيانات ‪DBMSs‬‬ ‫❑ هي برامج تُستخدم إلنشاء‪ ،‬إدارة‪ ،‬وتعديل قواعد البيانات‪.‬‬ ‫❑ تسهل التعامل مع البيانات بطريقة منظمة ومباشرة‪.‬‬ ‫❑ توفر أدوات السترجاع البيانات بسرعة ودقة وفًقا الحتياجات المستخدم‪.‬‬ ‫حاسما في تخزين البيانات ومعالجتها بطريقة تسهم في‬ ‫ً‬ ‫دور‬ ‫ا‬ ‫ً‬ ‫األنظمة‬ ‫هذه‬ ‫تلعب‬ ‫❑‬ ‫تحسين أداء التطبيقات وتوفير األمان الالزم للبيانات‪.‬‬ ‫نظم إدارة قواعد البيانات ‪DBMSs‬‬ ‫❑ أهمية نظم إدارة قواعد البيانات‪:‬‬ ‫▪ إدارة البيانات بكفاءة من خالل تنظيم البيانات فى شكل جداول‪.‬‬ ‫▪ التقليل من التكرار ‪.‬‬ ‫▪ أمان البيانات من خالل التشفير وتحديد صالحيات المستخدمين‪.‬‬ ‫▪ استرجاع البيانات بسهولة من خالل االستعالمات‪.‬‬ ‫▪ دعم المعامالت من خالل الخصائص ‪ ACID‬لضمان سالمة المعامالت‬ ‫عند تعديل أو تحديث البيانات‪.‬‬ ‫▪ دعم النسخ االحتياطي من خالل أدوات للنسخ االحتياطي للبيانات‬ ‫واستعادتها في حالة حدوث فشل في النظام أو تعطل غير متوقع‪.‬‬ ‫نظم إدارة قواعد البيانات ‪DBMSs‬‬ ‫❑ وظائف نظم ادارة قواعد البيانات‪:‬‬ ‫▪ تعريف البيانات ‪Data Definition‬‬ ‫▪ إدخال البيانات ‪Data Manipulation‬‬ ‫▪ استعالم البيانات ‪Data Querying‬‬ ‫▪ تكامل البيانات ‪Data Integrity‬‬ ‫▪ إدارة المستخدمين ‪User Management‬‬ ‫▪ الصيانة ‪Maintenance‬‬ ‫نظم إدارة قواعد البيانات ‪DBMSs‬‬ ‫❑ أمثلة على نظم إدارة قواعد البيانات‪:‬‬ ‫‪ : MySQL‬نظام قاعدة بيانات عالئقية مفتوحة المصدر‪ ،‬تُستخدم على نطاق‬ ‫▪‬ ‫واسع في تطوير مواقع الويب‪.‬‬ ‫‪ : Oracle DB‬نظام قاعدة بيانات تجارية شهيرة تُستخدم في المؤسسات‬ ‫▪‬ ‫نظر لميزاتها القوية ودعمها للتطبيقات المعقدة‪.‬‬ ‫الكبيرة ًا‬ ‫‪ : Microsoft SQL Server‬نظام قاعدة بيانات عالئقية تستخدم في‬ ‫▪‬ ‫الشركات إلدارة البيانات والتطبيقات‪.‬‬ ‫▪ قاعدة بيانات ‪ : NoSQL‬نظام يستخدم لتخزين البيانات غير المنظمة مثل‬ ‫المستندات‪.‬‬ ‫الوظائف المتعلقة بقواعد البيانات‬ ‫❑ مسؤول قاعدة البيانات ‪: DBA‬‬ ‫▪ مسؤول عن تثبيت ‪ installation‬قواعد البيانات وإعدادها ‪configuration‬‬ ‫وصيانتها وأمنها‪.‬‬ ‫▪ كما يقوم بمهام مثل النسخ االحتياطي واستعادة البيانات وضبط األداء‬ ‫واستكشاف األخطاء ‪ troubleshooting‬وإدارة المستخدمين‪.‬‬ ‫❑ مطور قاعدة البيانات ‪: Database Developer‬‬ ‫▪ مسؤول عن تصميم وتطوير واختبار قواعد البيانات‪.‬‬ ‫▪ كما يقوم بمهام مثل نمذجة البيانات ‪ data modeling‬وتحسين االستعالمات‬ ‫‪ query optimization‬واإلجراءات المخزنة ‪stored procedures‬‬ ‫الوظائف المتعلقة بقواعد البيانات‬ ‫❑ عالم البيانات ‪:Data Scientist‬‬ ‫▪ مسؤول عن استخراج األفكار والمعرفة من البيانات الموجودة في قواعد‬ ‫البيانات‪.‬‬ ‫▪ كما يقوم بمهام مثل تنظيف البيانات واستكشاف البيانات ونمذجة البيانات‬ ‫والتعلم اآللي والذكاء االصطناعي‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية نظم إدارة قواعد البيانات ‪ DBMS‬تحدد‪:‬‬ ‫▪ كيفية تنظيم البيانات‬ ‫▪ وكيفية تفاعل المستخدمين مع قاعدة البيانات‪.‬‬ ‫▪ وكذلك كيفية إدارة البيانات داخل النظام‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية المستوى الواحد ‪Single-Tier Architecture‬‬ ‫▪ في هذا النوع من الهيكلية‪ ،‬يتم إدارة جميع مكونات ‪ DBMS‬من خالل‬ ‫تطبيق واحد فقط على نفس الجهاز‪.‬حيث يمكن للمستخدمين التفاعل مع‬ ‫قاعدة البيانات مباشرة دون وجود مستوى وسيط بين المستخدم والنظام‪.‬‬ ‫▪ المزايا‪:‬‬ ‫‪ o‬بسيط وسهل الفهم والتطبيق‪.‬‬ ‫‪ o‬مناسب للتطبيقات الصغيرة التي ال تحتاج إلى تفاعل مع العديد من‬ ‫المستخدمين‪.‬‬ ‫▪ العيوب‪:‬‬ ‫‪ o‬محدود في االستخدام‪ ،‬حيث ال يدعم التطبيقات الكبيرة أو المعقدة‪.‬‬ ‫‪ o‬ال يدعم االتصال عبر الشبكات أو بيئات متعددة المستخدمين‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية المستويين ‪Two-Tier Architecture‬‬ ‫▪ في هيكلية المستويين‪ ،‬يتم تقسيم النظام إلى طبقتين رئيسيتين‪:‬‬ ‫‪ o‬العميل ‪ : Client‬الواجهة التي يتفاعل معها المستخدم إلدخال البيانات أو‬ ‫استخراجها‪.‬‬ ‫‪ o‬الخادم ‪ : Server‬يقوم بإدارة قاعدة البيانات ومعالجة االستعالمات‬ ‫المرسلة من العميل‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية المستويين ‪Two-Tier Architecture‬‬ ‫▪ آلية العمل‪:‬‬ ‫‪ o‬المستخدم يقوم بإدخال استعالم عبر واجهة العميل‪.‬‬ ‫‪ o‬يتم إرسال االستعالم إلى خادم قاعدة البيانات‪ ،‬الذي يعالجه ويعيد النتيجة‬ ‫إلى العميل‪.‬‬ ‫▪ المزايا‪:‬‬ ‫‪ o‬تحسين األداء مقارنة بالهيكلية ذات المستوى الواحد‪.‬‬ ‫‪ o‬يفصل بين واجهة المستخدم ومعالجة البيانات‪ ،‬مما يتيح توزيع األحمال‬ ‫بشكل أفضل‪.‬‬ ‫▪ العيوب‪:‬‬ ‫‪ o‬مع زيادة عدد المستخدمين‪ ،‬قد تتعرض الخوادم إلى ضغط كبير مما يقلل‬ ‫من األداء‪.‬‬ ‫‪ o‬يحتاج إلى إدارة جيدة للشبكة بين العميل والخادم‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية الثالثة مستويات ‪Three-Tier Architecture‬‬ ‫تتكون من ثالثة مستويات رئيسية‪:‬‬ ‫▪ مستوى العرض ‪ : Presentation Tier - Client‬يمثل الواجهة التي‬ ‫يتفاعل معها المستخدم (مثل تطبيق أو متصفح ويب)‪.‬يستخدم المستخدم هذا‬ ‫المستوى إلدخال االستعالمات واستقبال النتائج‪.‬‬ ‫▪ مستوى التطبيقات ‪ : Application Tier - Middleware‬يمثل الوسيط‬ ‫بين المستخدم وقاعدة البيانات‪.‬يتولى هذا المستوى معالجة منطق األعمال‬ ‫‪ Business Logic‬والتحقق من البيانات قبل إرسالها إلى مستوى البيانات‪.‬‬ ‫كما يقوم بالتنسيق بين مستوى العرض ومستوى البيانات‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية الثالثة مستويات ‪Three-Tier Architecture‬‬ ‫▪ مستوى البيانات ‪ : Data Tier - Database Server‬يتعامل مع تخزين‬ ‫المعامالت‬ ‫ومعالجة‬ ‫البيانات‪،‬‬ ‫قاعدة‬ ‫استعالمات‬ ‫إدارة‬ ‫البيانات‪،‬‬ ‫‪ Transactions‬في هذا المستوى‪ ،‬يتم إدارة قاعدة البيانات الفعلية باستخدام‬ ‫خوادم قوية قادرة على التعامل مع كميات ضخمة من البيانات‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية الثالثة مستويات ‪Three-Tier Architecture‬‬ ‫▪ المزايا‪:‬‬ ‫‪ o‬قابلية التوسع ‪ : Scalability‬يمكن توزيع كل مستوى على خوادم مختلفة‬ ‫لتحسين األداء وتوزيع الحمل‪.‬‬ ‫محسن ‪ : Improved Security‬يفصل بين واجهة المستخدم‬ ‫ّ‬ ‫أمان‬ ‫‪o‬‬ ‫والبيانات‪ ،‬مما يضيف طبقة أمان إضافية‪.‬‬ ‫‪ o‬إدارة أفضل ‪ Better Manageability‬يسهل تحديث كل مستوى بشكل‬ ‫مستقل دون التأثير على المستويات األخرى‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ هيكلية الثالثة مستويات ‪Three-Tier Architecture‬‬ ‫▪ العيوب‪:‬‬ ‫‪ o‬التعقيد ‪ : Complexity‬يتطلب بناء وصيانة هذه البنية موارد وخبرة‬ ‫أكبر‪.‬‬ ‫‪ o‬التكلفة ‪ : Cost‬يحتاج إلى موارد أكثر من حيث الخوادم واإلدارة‪.‬‬ ‫مراحل بناء قواعد البيانات‬ ‫▪ مرحلة التحليل ‪Analysis‬‬ ‫‪ o‬يتم دراسة النظام الحالي وفهم مكوناته وعملياته والمشاكل التي تواجهه‬ ‫والقصور الموجودة فيه ‪ ،‬وتنتهي عملية التحليل بتحديد احتياجات‬ ‫المستخدم‪.‬‬ ‫▪ مرحلة التصميم ‪Design‬‬ ‫‪ o‬ويتم خالل هذه المرحلة إيجاد التصميم األمثل لنظام المعلومات الحاسوبي‬ ‫الذي يلبي احتياجات المستخدمين والتي تم توصيفها في مرحلة التحليل‪.‬‬ ‫بناء نظم إدارة قواعد البيانات‬ ‫❑ مراحل بناء قواعد البيانات‪:‬‬ ‫▪ مرحلة التنفيذ ‪Implementation‬‬ ‫‪ o‬ويتم خاللها تنفيذ التصميم الذي يتم التوصل إليه في المرحلة السابقة‬ ‫وتحويله إلى نظام جاهز للعمل أو تعديل النظام الموجود‪.‬‬ ‫‪ o‬وبالطبع فان قواعد البيانات في مرحلة التنفيذ بحاجة إلى ب ارمج وأدوات‬ ‫خاصة إلدارتها والتعامل معها وهى ‪.DBMS‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ هو طريقة شائعة ومستخدمة لتصميم قواعد البيانات العالئقية‪.‬‬ ‫❑ يهدف هذا النموذج إلى تمثيل البيانات من خالل "الكيانات" و"العالقات" بينها‬ ‫بطريقة بصرية مبسطة تسهل فهم الهيكلية وتنظيم البيانات‪.‬‬ ‫❑ هو رسم تخطيطي يعرض العالقة بين مجموعات الكيانات المخزنة في قاعدة‬ ‫البيانات‪.‬‬ ‫❑ هو نموذج ُيستخدم لتصميم قواعد البيانات لفهم كيفية تنظيم البيانات وتفاعلها‪.‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫ملموسا مثل‬ ‫ً‬ ‫ا‬‫شيئ‬ ‫ً‬ ‫ن‬‫يكو‬ ‫أن‬ ‫يمكن‬ ‫الذي‬ ‫و‬ ‫‪،‬‬ ‫‪Entity‬‬ ‫الكيان‬ ‫يمثل‬ ‫‪:‬‬‫المستطيل‬ ‫❑‬ ‫مفهوما مثل "طلب"‪.‬‬ ‫ً‬ ‫أو‬ ‫"‬‫عميل‬‫"‬ ‫❑ الدوائر‪ :‬تمثل الخصائص أو الصفات ‪ Attributes‬الخاصة بالكيان‪.‬كل دائرة‬ ‫تمثل خاصية معينة‪ ،‬مثل اسم العميل أو تاريخ الطلب‪.‬‬ ‫❑ المعين (أو شكل الماسة)‪ُ :‬يستخدم لتمثيل العالقات ‪ Relationships‬بين‬ ‫الكيانات‪.‬يوضح كيف ترتبط الكيانات ببعضها البعض‪.‬‬ ‫❑ الخطوط‪ :‬توضح أنواع العالقات‪ ،‬سواء كانت عالقة واحد إلى واحد‪ ،‬واحد إلى‬ ‫متعدد‪ ،‬أو متعدد إلى متعدد‪.‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ الكيانات ‪: Entities‬‬ ‫▪ الكيان ‪ entity‬هو كائن في العالم الحقيقي له وجود مستقل‪ ،‬كما يمكن‬ ‫تمييزه عن الكائنات األخرى‪ ،‬وهو كائن أو شيء يمكن أن نحتفظ ببيانات‬ ‫عنه‪.‬‬ ‫▪ على سبيل المثال‪ ،‬في قاعدة بيانات خاصة بجامعة‪ ،‬يمكن أن يكون "طالب"‬ ‫كيانا‪.‬ويرمز للكيان بمستطيل يحتوى اسم الكيان‪.‬‬ ‫أو "كورس" أو "أستاذ" ً‬ ‫طالب‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ الكيانات ‪: Entities‬‬ ‫▪ قد يكون هذا الكيان‪:‬‬ ‫‪ o‬كائن له وجود مادي ‪physical existence‬‬ ‫مثل‪ :‬محاضر‪ ،‬وطالب‪ ،‬وسيارة‪.‬‬ ‫‪ o‬كائن له وجود مفاهيمي ‪conceptual existence‬‬ ‫مثل مقرر دراسى ‪ ،‬وظيفة‪.‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ الكيانات ‪: Entities‬‬ ‫▪ أمثلة على الكيانات‪:‬‬ ‫‪ o‬شخص‪ :‬الموظف‪ ،‬الطالب‪ ،‬المريض‬ ‫‪ o‬المكان‪ :‬مخزن‪ ،‬مبنى‬ ‫‪ o‬شئ‪ :‬اآللة والمنتج والسيارة‬ ‫‪ o‬الحدث‪ :‬بيع‪ ،‬تسجيل‪ ،‬تجديد‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ الكيانات ‪: Entities‬‬ ‫▪ أنواع الكيانات‪:‬‬ ‫‪ o‬الكيانات القوية ‪ : Strong Entities‬كيانات يمكن أن توجد بمفردها‬ ‫دون االعتماد على كيانات أخرى‪.‬مثل كيان "طالب"‬ ‫‪ o‬الكيانات الضعيفة ‪ : Weak Entities‬كيانات تعتمد على كيان آخر‬ ‫لوجودها‪.‬يمثل الكيان الضعيف مستطيل مزدوج‪ ،‬على سبيل المثال‪ :‬ال‬ ‫يمكن تحديد الحساب المصرفي بشكل فريد دون معرفة البنك الذي ينتمي‬ ‫إليه الحساب‪ ،‬وبالتالي فإن الحساب المصرفي هو كيان ضعيف‪.‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫▪ السمة هي خاصية أو ميزة تُستخدم لوصف الكيان‪.‬‬ ‫▪ على سبيل المثال‪ :‬السمة "اسم الموظف" أو "تاريخ ميالد الموظف" في كيان‬ ‫"الموظف"‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫▪ أنواع السمات‪:‬‬ ‫‪ o‬السمة الرئيسية ‪key‬‬ ‫كيانا من مجموعة كيان‪.‬‬ ‫تحدد السمة الرئيسية بشكل فريد ً‬ ‫ ‬ ‫على سبيل المثال‪ :‬يمكن الرقم الجامعي للطالب أن يحدد بشكل فريد‬ ‫ ‬ ‫طالبا من بين مجموعة من الطالب‪ ،‬ويتم تمثيل السمة الرئيسية‬ ‫ً‬ ‫بالبيضاوي مثل السمات األخرى‪ ،‬ولكن يتم وضع خط تحت نص السمة‬ ‫الرئيسية‪.‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫▪ أنواع السمات‪:‬‬ ‫‪ o‬السمات البسيطة ‪Simple Attributes‬‬ ‫سمات لها قيمة واحدة وال يمكن تقسيمها‪ ،‬مثل "الرقم القومي"‪.‬‬ ‫‪ o‬السمات المركبة ‪Composite Attributes‬‬ ‫سمات يمكن تقسيمها إلى أجزاء أى بيان له تفاصيل‪ ،‬مثل "العنوان" الذي‬ ‫يتكون من "المدينة"‪" ،‬الشارع"‪ ،‬إلخ‪.‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫▪ أنواع السمات‪:‬‬ ‫‪ o‬السمات متعددة القيم ‪Multi-valued Attributes‬‬ ‫سمات يمكن أن تأخذ أكثر من قيمة‪ ،‬مثل "رقم هاتف الطالب" الذي قد‬ ‫يكون له أكثر من رقم‪.‬‬ ‫مثال‪ :‬المؤهل (بكالوريوس – ماجستير ‪).. -‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫▪ أنواع السمات‪:‬‬ ‫‪ o‬السمات المشتقة ‪Derived Attributes‬‬ ‫سمات يمكن أن نستنتج قيمتها بمعلومية سمات أخرى‪.‬‬ ‫مثل‪ :‬العمر يمكن حسابة من تاريخ الميالد‬ ‫مثل‪ :‬صافى الدخل‪ :‬يمكن حسابه من المرتب – الضرائب ‪ +‬الحوافز‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ السمات ‪: Attributes‬‬ ‫مخطط عالقة الكيانات ‪ERD‬‬ ‫❑ مثال‪:‬‬

Use Quizgecko on...
Browser
Browser