1 / 15
الباب الثالث: التعامل مع قواعد البيانات

قواعد البيانات

الاتصال — العرض — التعديل

كل التطبيقات (واتساب، إنستغرام، نظام المدرسة) تعتمد على قواعد البيانات لحفظ المعلومات 💾🔄📊

أ. حسين الصفار

مدرسة دعيج السلمان الصباح الثانوية — مارس ٢٠٢٦

ليش نربط البرنامج بقاعدة بيانات؟ 🤔

تخيل عندك "بنك أسئلة" — بتكتب ١٠٠٠ سؤال داخل الكود؟!

ننشئ الأسئلة في Access ونربطها بالبرنامج!

🔐
حماية البرنامج
(فصل الواجهة عن البيانات)
👥
أكثر من مستخدم
يقدر يستخدم البرنامج

مفهومان أساسيان 💡

عشان الاتصال ينجح، نحتاج شيئين:

رسم توضيحي للاتصال

📖 من الكتاب: رسم توضيحي لعناصر الاتصال

🔌 ١. الاتصال (Connection)

السلك الخيالي اللي يربط برنامجنا بملف الـ Access (يعرف مكانه واسمه)

📦 ٢. مجموعة البيانات (DataSet)

مهم جداً: نسخة مؤقتة من القاعدة في ذاكرة RAM عشان نتعامل معها بسرعة

خطوات الاتصال بقاعدة البيانات 🔗

الفيجوال بيسك يوفر "معالج" (Wizard) يسهل المهمة

قائمة Data

📖 الخطوة: Data → Add New Data Source

معالج مصدر البيانات

📖 نختار Database ونضغط Next

اختبار الاتصال ✅

نحدد ملف Access ونضغط Test Connection

اختبار الاتصال

📖 من الكتاب: نافذة اختبار الاتصال — لازم تظهر رسالة نجاح

بعد نجاح الاتصال ← يتم إنشاء DataSet تلقائياً!

عرض البيانات في البرنامج 📺

من نافذة Data Sources نسحب الجداول على النموذج

نافذة مصادر البيانات

📖 من الكتاب: نافذة Data Sources — نسحب ونفلت

BindingSource
القناة الوسيطة — نبرمجها للتنقل
TableAdapter
ينقل البيانات من القاعدة للـ DataSet

شريط التنقل (BindingNavigator) ⏭️

شريط جاهز للتنقل بين السجلات

شريط التنقل

📖 من الكتاب: شريط التنقل الجاهز

💾|1 of 10

برمجة أزرار التنقل 👨‍💻

نتحكم بالبيانات عن طريق BindingSource:

الكودالوظيفة
.MoveFirst()للسجل الأول
.MoveLast()للسجل الأخير
.MoveNext()للسجل التالي
.MovePrevious()للسجل السابق

محاكاة التنقل في قاعدة البيانات 🎮

جرب أزرار التنقل!

السؤال ١: العبارة المستخدمة للتكرار هي...

السجل: 1 من 3

الإضافة والتعديل ✏️

شريط التنقل يحتوي أزرار جاهزة:

Add New
إضافة سجل جديد
Delete
حذف السجل الحالي
💾
Save
حفظ التعديلات

شبكة البيانات (DataGridView) 🧮

بدل ما نعرض سجل واحد — نعرض كل البيانات بجدول!

شبكة البيانات

📖 من الكتاب: أداة DataGridView — تشبه Excel

كيف نحفظ التعديلات؟ 💾

تذكر! نعدل على النسخة المؤقتة — لازم نحفظ للقاعدة الأصلية

' إرسال كل التحديثات لقاعدة البيانات Me.TableAdapterManager.UpdateAll(Me.Db_infDataSet)

تحدي (١) — صح أم خطأ 🧠

مجموعة البيانات (DataSet) هي نسخة من قاعدة البيانات يتم إنشاؤها في ذاكرة الكمبيوتر (RAM).

تحدي (٢) — اختياري 🧠

الكود المستخدم للانتقال إلى السجل التالي:

🏆

وحوش يا شباب!

خلاصة الباب الثالث:

المصطلحالوظيفة
DataSetنسخة مؤقتة من البيانات في الذاكرة
BindingSourceالوسيط للتنقل (MoveNext)
DataGridViewعرض البيانات بشكل جدول
TableAdapterManagerحفظ التعديلات (UpdateAll)
← العودة لقائمة الدروس
أ. حسين الصفار — مدرسة دعيج السلمان الصباح الثانوية | مارس ٢٠٢٦