introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2...

73
2 1 اﻟﻤﻘﺪﻣﺔ: Introduction اﻟﻤﻌﻠﻮﻣﺎت ﻟﺘﻨﻈﻴﻢ اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪﻈﻢ أهﻤﻴﺔ ﻣﻦ اﻟﺤﺎﺿﺮ وﻗﺘﻨﺎ ﻓﻲ اﻟﻤﻌﻠﻮﻣﺎت أهﻤﻴﺔ زادتﻨﺎﺳﺐ اﻟﻤ اﻟﻮﻗﺖ وﻓﻲﻨﺎﺳﺒﺔ اﻟﻤ ﺑﺎﻟﻄﺮﻳﻘﺔ ﻟﻸﺳﺘﺨﺪامهﺎ وﺗﻮﻓﻴﺮﻬﺎ ﻧﺤﺘﺎﺟ اﻟﺘﻲ. ﻈﻢ أدارة ﻋﻠﻢ ﺗﻄﻮر هﻜﺬا ﻓﻲ ﻓﺮﻋﻲ ﻣﻮﺿﻮع ﻣﻦ اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪ ﻣﻦ رﺋﻴﺴﻲ وﻣﻜﻮن أﺳﺎﺳﻲ ﻣﻮﺿﻮع اﻟﻰ اﻟﺤﺎﺳﻮب ﺗﻄﺒﻴﻘﺎت ﻋﻠﻢ ﻣﻨﻬﺎج ﻓﻲ رﺋﻴﺴﻴﺎ ﺰءا اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪﻈﻢ أﺻﺒﺤﺖ ﻓﻘﺪ وﺑﺬﻟﻚ، اﻟﺤﺪﻳﺚ اﻟﺤﺎﺳﻮب ﻋﻠﻢ اﻟﺤﺎﺳﻮب. 2 2 اﻟﺒﻴﺎﻧﺎت ﻗﺎﻋﺪة ﻣﺎهﻲ: What is a database اﻟﻤﻌﻠﻮﻣﺎ أو اﻟﺒﻴﺎﻧﺎت ﻣﻦ ﻣﺠﻤﻮﻋﺔ ﻋﻦ ﻋﺒﺎرة اﻟﺒﻴﺎﻧﺎت ﻗﺎﻋﺪة ت اﻟﻌﻼﻗﺔ وذاتﺘﺼﻠﺔ اﻟﻤ ﺑﻴﻨﻬﺎ ﻓﻴﻤﺎﺘﺒﺎدﻟﺔ اﻟﻤﺒﺮر ﻏﻴﺮ ﺗﻜﺮار دون ﻣﻦ أي ﻧﻤﻮذﺟﻴﺔ ﺑﻄﺮﻳﻘﺔ واﻟﻤﺨﺰوﻧﺔ. أﻧﻬﺎهﺎ ﻤﻴﺰ ﻣﺎﻳ وأهﻢﻬﺎ ﺑﺄﺳﺘﺨﺪاﻣ ﺗﻘﻮم اﻟﺘﻲ اﻟﺒﺮاﻣﺞ ﻣﻦ اﻟﺘﻐﻴﻴﺮ ﺿﺪ واﻟﻤﻨﺎﻋﺔ اﻷﺳﺘﻘﻼﻟﻴﺔ ﻣﻦ ﻧﻮﻋﺎﺤﻘﻖ ﺑﻄﺮﻳﻘﺔﺨﺰن ﺴﺘﻘﺒﻼ أو ﺣﺎﺿﺮا. ا ﻗﻮاﻋﺪ اﻧﺸﺎء ﻳﺘﻢ ﺣﻴﺚ آﺎﻓﺔ وأﺟﺮاء ﻣﻌﻬﺎ اﻟﺘﻌﺎﻣﻞ اﻣﻜﺎﻧﻴﺔ ﻣﻊ وﺧﺰﻧﻬﺎ ﻟﺒﻴﺎﻧﺎت، ﺗﺤﺪﻳﺚ، أﺿﺎﻓﺔ، ﺣﺬف ﻋﻤﻠﻴﺎت ﻣﻦ ﻋﻠﻴﻬﺎ اﻟﻤﻄﻠﻮﺑﺔ اﻟﻌﻤﻠﻴﺎت... ادارة ﻧﻈﺎم ﺑﺄﺳﺘﺨﺪام وذﻟﻚ اﻟﺦ اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪDatabase Management Systems ( DBMS ) . ﻋﻦ ﻋﺒﺎرة هﻮ واﻟﺬيﻤﻜﻦ ﺧﻼﻟﻬﺎ ﻣﻦ واﻟﺘﻲ ﺑﺮاﻣﺞ ﻣﺠﻤﻮﻋﺔ أو ﺑﺮﻧﺎﻣﺞ آﺎﻓﺔ اﺟﺮاء ﺛﻢ وﻣﻦ اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪ اﻟﻰ اﻟﻮﺻﻮل ﻋﻠﻴﻬﺎ اﻟﻤﻄﻠﻮﺑﺔ اﻟﻌﻤﻠﻴﺎت. ﺑﺸ ـ ـ ـ اﻟﺒﻴﺎﻧﺎت ﺗﻤﺜﻴﻞ ﻳﺘﻢ ﺎم اﻟﺒﻴﺎﻧﺎت ﻗﺎﻋﺪة داﺧﻞ، ﻣﺨﺘﻠﻔﺔ ﻧﻤﺎذج هﻴﺌﺔ ﻠﻰ آ ـ ﺄن ﻋﻼﺋﻘﻴ ﻧﻤﺎذج ﺗﻜﻮن ـrelational model ﺷﺒﻜﻴ أو ـnetwork model هﺮﻣﻴ أو ـhierarchical model ) ﺘﺴﻠﺴﻠﺔ ﻣﺮاﺗﺐ ﻓﻲ ﻣﻨﻈﻤﺔ( ﻣﻤﺜﻠﺔ اﻟﺤﺎﺳﺒﺔ ﻋﻠﻰ رﺳﻮم ﺷﻜﻞ ﻋﻠﻰ أو رﻳﺎﺿﻴﺔ ﺑﻤﻌﺎدﻻتobject-oriented data model . اﻟﻨﻤﺎذج هﺬﻩ ـ ـ ﺧﻼﻟﻬﺎ ﻣﻦ ﻳﺘﻢ اﻟﺘﻲ اﻟﻄﺮﻳﻘﺔ ﺮف اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪ داﺧﻞ اﻟﺒﻴﺎﻧﺎت ﺗﻤﺜﻴﻞ، أدارة ﻧﻈﺎم وﻳﻌﺘﺒﺮ اﻟﻨﻤﺎذج هﺬﻩ أهﻢ ﻣﻦ واﺣﺪ اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪ. أآﺴـﺲ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﺑﺮﻧﺎﻣﺞMS-Access 2003 ﻓﻲ اﻟﻌﻼﺋﻘﻲ اﻟﻨﻤﻮذج ﻋﻠﻰ ﻳﻌﺘﻤﺪ اﻟﺒﻴﺎﻧﺎت ﻗﻮاﻋﺪ أدارة ﺑﻨﻈﺎمﺴﻤﻰ ﻓﻴﻪﺴﺘﺨﺪم اﻟﻤ اﻟﻨﻈﺎم ﻓﺄن ﻟﺬﻟﻚ اﻟﺒﻴﺎﻧﺎت ﻗﺎﻋﺪة ﺿﻤﻦ ﻟﻠﺒﻴﺎﻧﺎت ﺗﻤﺜﻴﻠﻪ اﻟﻌﻼﺋﻘﻴﺔRelational DBMS أوRDBMS . ﻭﺍﻟﻐﺎﺯ ﺍﻟﻧﻔﻁ ﺗﻛﺭﻳﺭ ﻫﻧﺩﺳﺔ ﻓﺭﻉ ﺍﻟﻌﺎﺷﺭﺓ ﺍﻟﻣﺣﺎﺿﺭﺓ ﺑﻳﺳﻙ ﻓﻳﺟﻭﺍﻝ ﺑﻠﻐﺔ ﺍﻟﺑﺭﻣﺟﺔ ﺍﻟﺑﻳﺎﻧﺎﺕ ﻗﻭﺍﻋﺩ ﺍﻟﻛﻳﻣﻳﺎﻭﻳﺔ ﺍﻟﻬﻧﺩﺳﺔ ﻗﺳﻡ ﺍﻷﻭﻟﻰ ﺍﻟﻣﺭﺣﻠﺔ٩٩

Upload: others

Post on 03-Feb-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Introduction: المقدمة 1 – 2زادت أهمية المعلومات في وقتنا الحاضر من أهمية نظم قواعد البيانات لتنظيم المعلومات

هكذا تطور علم أدارة نظم . التي نحتاجها وتوفيرها لألستخدام بالطريقة المناسبة وفي الوقت المناسب

تطبيقات الحاسوب الى موضوع أساسي ومكون رئيسي من قواعد البيانات من موضوع فرعي في

علم الحاسوب الحديث ، وبذلك فقد أصبحت نظم قواعد البيانات جزءا رئيسيا في منهاج علم

.الحاسوب

What is a database: ماهي قاعدة البيانات 2 – 2المتصلة وذات العالقة ت قاعدة البيانات عبارة عن مجموعة من البيانات أو المعلوما

وأهم مايميزها أنها . والمخزونة بطريقة نموذجية أي من دون تكرار غير مبرر المتبادلة فيما بينها

تخزن بطريقة تحقق نوعا من األستقاللية والمناعة ضد التغيير من البرامج التي تقوم بأستخدامها

لبيانات وخزنها مع امكانية التعامل معها وأجراء آافة حيث يتم انشاء قواعد ا. حاضرا أو مستقبال

الخ وذلك بأستخدام نظام ادارة ... العمليات المطلوبة عليها من عمليات حذف ، أضافة ، تحديث ،

والذي هو عبارة عن . Database Management Systems ( DBMS )قواعد البيانات

الوصول الى قواعد البيانات ومن ثم اجراء آافة برنامج أو مجموعة برامج والتي من خاللها يمكن

. العمليات المطلوبة عليها

لى هيئة نماذج مختلفة ، داخل قاعدة البيانات عام يتم تمثيل البيانات ـل عـكـبش

ةـأو هرمي network model ةـأو شبكي relational model ةـتكون نماذج عالئقي أنـآ

hierarchical model ) أو على شكل رسوم على الحاسبة ممثلة ) منظمة في مراتب متسلسلة

. object-oriented data model بمعادالت رياضية

، تمثيل البيانات داخل قواعد البيانات رف الطريقة التي يتم من خاللها ـعـتهذه النماذج

.قواعد البيانات واحد من أهم هذه النماذج ويعتبر نظام أدارة

يعتمد على النموذج العالئقي في MS-Access 2003برنامج مايكروسوفت أآسـس

تمثيله للبيانات ضمن قاعدة البيانات لذلك فأن النظام المستخدم فيه يسمى بنظام أدارة قواعد البيانات

. RDBMSأو Relational DBMSالعالئقية

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

٩٩

Page 2: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

An introduction to Ms-Access : أآسـس يكروسوفتادمة لبرنامج ممق 3 – 2هو عبارة عن برنامج يستخدم لحفظ البيانات ) Ms-Access( وسوفت أآسس ريكام

قواعد بيانات مكونة من مجموعة من الجداول المنظمة شرآات في صيغةوالمعلومات الخاصة بال

عرضها بطريقة تسهل األستفادة من تلك المعلومات وتخزين بيانات جديدة بصورة معينة و

.واألستعالم عن هذه البيانات وطباعتها

Microsoft Access lets you collect, organize, find, display and print

information about your personal and business life.

وسوفت أآسس على أنه أحد تطبيقات الحاسبة والتي ريكاامج مآذلك يمكن تعريف برن

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

مرتبطة مع بعضها البعض عن طريق الشبكة ، حيث يستخدم هذا التطبيق في ادارة المعلومات

)مثل المعلومات التجارية ( Personal information management ( PIM ) الشخصية

. دة البيانات ـخلة والمكونة لقاعمن حيث تنظيم وأدارة آافة البيانات الدا

ادارة آافة المعلومات من ملف قاعدة بيانات واحد ، حيث Ms-Accessيمكن بأستخدام

، ثم عرض ) Tables( حاويات تخزين منفصلة نستطيع في هذا الملف أن نقوم بتقسيم البيانات الى

، ثم البحث عن البيانات ) Forms( بيانات الجداول ، اضافتها ، وتحديثها بأستخدام النماذج الفورية

البيانات أو ل، آما نستطيع تحلي) Queries( فقط ، وأستردادها بأستخدام األستعالمات التي نريدها

) . Reports( تخدام التقارير طباعتها بتخطيط معين بأس

سمي األآسـس بقاعدة البيانات ألن آلمة قاعدة تعني ترتيب البيانات وفق الموضوع ، وهذا :مالحظة

) .جدول ( الترتيب يكون على شكل أعمدة وصفوف

:مصطلحات خاصة بقواعد البيانات 4 – 2 .نات معينة لحفظ بيافي الجدول هو المكان المخصص : Fieldالحقل -

Fields : Are places in a table where you store information .

) .جميع المعلومات المخزونة في صف واحد ( مجموعة الحقول : Recordالسجل -

A record : Is all the fields contained in one row of an access datasheet . .البيانات تخزن في الملف جميع السجالت لقاعدة : Fileالملف -

File : Is all the records of a database .

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٠

Page 3: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Task pane create a new file Blank database

.تخزن الملفات المختلفة في مجلدات منفصلة : Folderالمجلد -

Folder : Different files are stored in separate folders .

Starting MS-Access: أآسـس مايكروسوفت تشغيل برنامج 5 – 2يتم النقر فوق األمر برامج Ms-Access 2003مايكروسوفت أآسـس لتشغيل برنامج

Programs من قائمة البدأStart ثم أختيار برنامج ، Microsoft Office Access 2003

. Microsoft Officeالموجود مع مجموعة تطبيقات برامج

أو فتح قاعدة بيانات موجودة سابقا ةيانات جديدبعد تشغيل البرنامج نقوم بتكوين قاعدة ب

) . 1 – 2( ، وآما موضح ذلك بالشكل رقم وذلك من خالل تنفيذ األمر التالي

فتح أو تكوين قاعدة بيانات جديدة) : 1 – 2( شكل رقم

عند اختيار . نها بموقع معين بأسم معين وخز) جديدة ( سيتم هنا تكوين قاعدة بيانات فارغة

عنوانه ملف قاعدة ) 2 – 2( والموضح بالشكل رقم يظهر مربع حوار Blank databaseاألمر

الذي نريد حفظ ملف قاعدة ) الموقع ( يتم تحديد الدليل حيث File New Database بيانات جديد

في مربع ديد أسم لملف قاعدة البيانات ، بعدها يتم تح Save In حفظ في وذلك في مربعالبيانات فيه

.فتظهر قاعدة البيانات التي تم انشائها Create، ثم أختيار األمر انشاء File Nameأسم الملف

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠١

Page 4: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

، ويمكن تحويلها الى Access 2000من نمط Access 2003تعتبر هذه القاعدة : مالحظة

Access 97 أوAccess 2002 أوAccess 2003 من خالل أختيار األمر التالي:

:ل البدأ بأنشاء قاعدة بيانات جديدة البد من قب: مالحظة

.تحديد الغرض من قاعدة البيانات وبالتالي تحديد المعلومات التي سنحتاجها . 1

.جدول آلحدد المعلومات التي نود حفظها في تتحديد الجداول الالزمة ، بحيث . 2

.د الحقول الالزمة في الجدول تحدي. 3

Access Components: يكروسوفت آآسـس امكونات م 6 – 2 ) Database window( بعد تكوين قاعدة البيانات تظهر لنا نافذة قاعدة البيانات الرئيسية

.) 3 – 2( والموضحة بالشكل رقم التالية ) Objects( ، والتي تحتوي على الكائنات

Tools Database Utilities Convert Database

To Access 2002-2003 File Format

بيانات جديدة خزن قاعدة) : 2 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٢

Page 5: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

سجل يمثل آلوتستخدم لتخزين البيانات في صفوف وأعمدة بحيث أن ) : Tables( الجداول . 1

، حيث يتم تحديد حقول بيانات القاعدة فقط من خالل Columnثل عمودا محقل ي وآل Rowصفا

.الجداول

آائن األستعالم عن (تستخدم لتجميع البيانات التي نطلبها من الجدول ) : Query( األستعالمات . 2

) .العالقات بين الجداول ةالبيانات وربط الجداول بمساعد

عرض الواجهات ( ثم عرضها وتحليلها نتستخدم ألدخال البيانات وم) : Forms( النماذج . 3

) .والصور

) .عرض التقارير وتنسيقها ( ورقة تستخدم لتلخيص البيانات ) : Reports( التقارير . 4

أبتداءا من Ms-Accessهي عناصر أو آائنات جديدة أضيفت الى ) : Pages( الصفحات . 5

.، وتعني تكوين واجهات أو صفحات آنترنت تقوم بعرض بيانات القاعدة 2000األصدار

تنفيذ أآثر من عمل في ( تقوم بأتمتة قاعدة البيانات الخاصة بـك ) : Macro( وحدات ماآرو . 6

) .وقت واحد

عبارة عن برامج تساعد المبرمج في تكوين لغات البرمجة ) : Modules( وحدات نمطية . 7

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

سنتطرق في هذا الفصل الى دراسة آيفية تصميم الجداول وأنواع الحقول المستخدمة فيها : مالحظـة

في عملية الربط مع برنامج لغة فيجوال مع الخصائص المهمة التي تحويها ، والتي سنستخدمها الحقا

. في الفصل الثالث ذلك بيسك والموضح

نافذة قاعدة البيانات الرئيسية) : 3 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٣

Page 6: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Task Pane Open

OR :

File Open

ــ ى بالــمـس تسـت آآسـوفـيكروساة في مـة المستخدمـالبرمج مـن المهـم معرفـة أن

Visual Basic for Application VBA) (. الموجودة في اآلآسس تشبه ماذجالنآذلك فأن

النماذج الموجودة في برنامج لغة فيجوال بيسك ، لكنها تحتوي على خاصية الربط الى حد ما

. المباشر مع البيانات ألنها موجودة ضمن قاعدة البيانات

Open an existing file: فتح قاعدة بيانات موجودة 7 – 2 :ها مسبقا ، فيتم من خالل األمر التالي لفتح قاعدة بيانات قد تم انشاء

المراد فتحه من قائمة الملفات ، ثم اختيار ) ملف قاعدة البيانات ( حيث يتم تحديد الملف

.) 1 – 2( والوضحة بالشكل رقم Openاألمر

) Tables( : الجداول 8 – 2حول موضوع معين في قواعد في حقول جموعة من المعلوماتمظيم الجدول عبارة عن تن

ينظم الجدول البيانات في أعمدة تدعى . البيانات ، فمثال قد يحتوي الجدول على بيانات حول العمالء

حقل على معلومة حول أحد العمالء آل يحتوي. Recordsوصفوف تدعى سجالت Fieldsحقول

ذلك موضح آما و المتعلقة بأحد العمالء) جميع الحقول ( المعلومات ويحتوي السجل على آـل

.) 4 – 2( رقم التخطيطي بالشكل

آذلك يمكن . بواسطة الجداول يمكن اضافة بيانات ، تحريرها أو عرضها في الجدول

ويمكن . و تصفيتها اجراء تدقيق امالئي للبيانات الموجودة في الجدول وطباعتها ، وفرز السجالت أ

.أو تعديل هيكل الجدول بواسطة اضافة أعمدة أو حذفها " صفحة البيانات " آذلك تغيير مظهر

Field1-Code Field2-Name Field3-Phone Number Field4-Email Address

( Field ) Column حقل

( Record )Row صف

حقول وسجالت الجدول) : 4 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٤

Page 7: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Creating New Table: جديد جدولانشاء 9 – 2 :، وهـي ) Ms-Access( في ملف قاعدة البيانات جديد جدول ينولتك طرقهناك ثالث

، )Create table in Design view( قة عرض التصميميتكوين جدول بطر: الطريقة األولى

ا أو ـديدة ، أو حذفهـول جـة حقـئ ، أو اضافـاء جدول آامل من الشـفي هذه الطريقة يتم انشحيث

من أهم هذه الطريقة تعتبر ، حيث) 5 – 2( الشكل رقم وآما موضح ذلك ب صهاـادة تخصيـاع

. بالتفصيلالحقا و لذلك سيتم التطرق لها الطرق وأآثرها أستخداما

حيث ، ) Create table by using wizard( تكوين جدول بأستخدام المعالج : الطريقة الثانية

يمكن األستعانة بها لتكوين يكروسوفت آآسس جداول جاهزة مع حقولهاايوفر لنا برنامج م

. جدول جديد

حيث ، ) Create table by entering data( تكوين جدول جديد بأدخال البيانات : الطريقة الثالثة

نقوم فقط بأدخال لذلك) .… , Field1 , Field2( تكون الحقول موجودة مسبقا بأسماء آفتراضية

.مكانية تغيير أسم الحقل األفتراضي ، وتخصيصه بنوع بيانات معينة البيانات تحت آل حقل مع أ

Create table in Design view :تكوين جدول بطريقة عرض التصميم 10 – 2 :أن عملية انشاء جدول جديد في وضع التصميم تقسم الـى

) . Field Name( حقول وتسميتها الادراج -

) . Data Type( الجدول لوحق في ع البياناتانوأتحديد -

) . Field Properties( تحديد خصائص للحقول المدرجة مع بياناتها -

) . Saving Table( حفظ الجدول مع انشاء مفتاح أساسي اذا تطلب األمر -

تكوين جدول بطريقة عرض التصميم) :5–2(شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٥

Page 8: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Field Name: ادراج الحقول وتسميتها 1 – 10 – 2

ألدخال أسماء معينة للحقول المكان المخصص هو Field Nameأن أسم الحقل

) البيانات التي سيتم ادخالها يكون اختياري ، بحيث يشير الى نوع عادة األسم ( في الجدول المدرجة

الحقلأسم فعلى سبيل المثال يتم تخصيص. مع الفراغات حرفا آحد أقصى 64ويحتوي على سعة ،

سيضم أسماء الطالب ضمن جدول الطالب ، وآذلك تخصيص أسم الذي" Name" بعنوان األول

والذي سيضم صور شخصية لكل طالب ضمن جدول الطالب " Picture" الحقل الثاني بعنوان

) . 5 – 2( وآما موضح ذلك بالشكل رقم

ي الجدول من خالل أسم الحقل ـل فـسوفت أآسـس تعريف آل حقيقوم برنامج مايكرو

Visual Basicك ـرامج بلغة الفيجوال بيسـتخدم بعد ذلك في األجراءات الفرعية للبـي سيسوالذ

Procedures المهيكلة ، وآذلك في تصريحات لغة األستعالماتStructured Query

Language ( SQL ) .

أسم الحقل اليمكن أن يكرر في الجدول ، ألن تكراره سيؤدي الى حدوث تضارب: مالحظـة

conflict أثناء تصميم قاعدة البيانات .

Procedure: A sequence of declarations and statements in a module that are

executed as a unit. Procedures in Visual Basic include both Sub and

Function procedures .

SQL string/statement: An expression that defines an SQL command, such as

SELECT, UPDATES, or DELETE, and includes clauses such as WHERE

and ORDER BY. SQL strings/statements are typically used in queries and in

aggregate functions.

Data Types : ولع البيانات في حقول الجدانوأتحديد 2 – 10 – 2 التي سيتم ادخالها بياناتال هو المكان المخصص لتحديد نوع Data Typeنوع البيانات

.الجدول ، مع مالحظة أن لكل حقل يخصص نوع بيانات واحد فقط ضمن في آل حقل

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٦

Page 9: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

حقل الى الجدول البد من تحديد نوع بيانات آل حقل ، فعند بعد األنتهاء من اضافة اسم ال

األنتقال الى عمود نوع البيانات يظهر سهم بجانب آل حقل ، وعند النقر على ذلك السهم تنسل

رقم الشكلعلى أنواع مختلفة من البيانات ، وآما موضح ذلك في قائمة تحتوي) تظهر (

لكل منها خصائصه الخاصة به وآما ل حقوبيانات ال يث أن هنالك عشرة أنواع منح ) 6 – 2(

) . 1 – 2( موضح ذلك بالجدول رقم

نوع بيانات حقول الجدول) : 6 – 2( شكل رقم

. أنواع بيانات الحقول وخصائصها وحجم تخزينها ) : 1 – 2( جدول رقم

Setting نوع الحقل

Type of data الوصف

Size حجم التخزين

Text نص

( Default ) Text or combinations of text and numbers , as well as numbers that don’t require calculations , such as phone numbers . It’s also called Alphanumeric data .

Up to 255 characters or the length set by the field size property , whichever is less .

حرفا أبجديا ، 255الحد األعلى 50بشكل تلقائي والبرنامج يعطي

.حرفا

Memo مذآرة

Lengthy text or combination of text and numbers

ادخال حروف وأرقام نص مفتوح مع أمكانية .وعالمات

Up to 65,535 characters

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٧

Page 10: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Number رقم

Numeric data used in mathematical calculations.

أجراء يمكن أستخدامها في ) رقمية ( قيم عددية . وحسب الحاجة الحسابات الرياضية

رقم صحيح أو عشري حسب الخصائص ( ) .لمستخدمة ا

1 , 2 , 4 < or 8 bytes

Date / Time

وقت / تأريخ

Date and time values for the years 100 through 9999

8 bytes

Currency

العملة

Currency values and numeric data used in mathematical calculations involving data with one to four decimal places (Numbers with a leading dollar sine. Use this data type for currency values such as dollars, Frances, or yens).

8 bytes Accurate to 15 digits on the left side of the decimal separator

خانة ، 15قيم نقدية تصل الى باألضافة الى الفاصلة العشرية

)ة نوع العملة المستخدم+ رقم (

Auto Number

ترقيم تلقائي

A unique sequential (incremented by 1) number or random number assigned by Microsoft Access whenever a new record is added to a table. AutoNumber fields can't be updated .

يستمر الترقيم ) سجل ( في حالة حذف أي قيد . أي بدون اعادة الترقيم تصاعديا

4 bytes (16 bytes if the Field Size property is set to Replication ID).

Yes / No

ال / نعم

Yes and No values are fields that contain only one of two values (Yes/No, True/False, or On/Off). Logical or Boolean values .

1 bit

OLE

Object آائن ربط

وتضمين العناصر

An object (such as a Microsoft Excel spreadsheet, a Microsoft Word document, graphics, sounds, or other binary data) linked to or embedded in a Microsoft Access table.

Up to 1 gigabyte (limited by available disk space) OLE : Object Linking and Embedding

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٨

Page 11: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Hyperlink أرتباط تشعبي

Text or combinations of text and numbers stored as text and used as a hyperlink address (hyperlink address: The path to a destination such as an object, document, or Web page). A hyperlink address can be a URL (address to an Internet or intranet site) or a UNC network path (address to a file on a local area network).). A hyperlink address can have up to four parts: Text to display— the text that appears in a field or control. Addressـــــthe path to a file (UNC path) or page (URL). Sub addressــــa location within the file or page . Screen tipـــــthe text displayed as a tool tip .

Each part of the three parts of a Hyperlink data type can contain up to 2048 characters ربط الخلية الحالية بملف خارجي ،حيث يستخدم آأرتباط تشعبي لعنوان معين

Lookup Wizard

معالج بحث

Creates a field that allows you to choose a value from another table or from a list of values by using a list box or combo box. Clicking this option starts the Lookup Wizard, which creates a Lookup field (Lookup field: A field, used on a form or report in an Access database, that either displays a list of values retrieved from a table or query, or stores a static set of values.). After you complete the wizard, Microsoft Access sets the data type based on the values selected in the wizard.

The same size as the primary key field used to perform the lookup, typically 4 bytes.

يستخدم عند ادخال بيانات أو قيم مكررة في الحقل المخصص لها ،

مثال حقل أسم المدينة أو حقل أي تكوين ) . أنثى / ذآر ( الجنس

حقل لغرض أختيار قيم من جدول آخر أو من قائمة من القيم

) .داد قائمة من الخيارات اع(

وأي صف محتويات الحقللو يستخدم هذا الحقل اختياري ) : Description( الوصف

ويحتوي . ، وبالتالي يسهل على المستخدم فهم هدف الحقل بعد مرور فترة زمنية مالحظات أخرى

األسم الممثل بالحقل فمثال يتم وصف حقل .آحد أقصى حرفا أبجديا 255هذا الحقل على سعة

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٠٩

Page 12: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

وذلك للداللة على أن بيانات هذا الحقل تحمل أسماء الطالب ، وآذلك " أسم الطالب " األول بعبارة

للداللة على أن " الصورة الشخصية " الحال بالنسبة للحقل الثاني فسيتم وصف حقل الصور بعبارة

الممثليين بجدول الطالب وآما بيانات هذا الحقل تحمل الصورة الشخصية لكل طالب من الطالب

. ) 5 – 2( شكل رقم موضح ذلك بال

Field Properties: المدرجة مع بياناتها لولحقلخصائص تحديد 3 – 10 – 2هو الجزء السفـلي من نافذة تصميم الجدول ، والذي يستخدم لعمل خصائص الحقل

ليس بالضرورة أن تحتوي ( المستخدمة في الجدول الحقول لكلعنصر و بكل األعدادات الخاصة

: ، مثـل )جميع أنواع البيانات المخصصة للحقول على نفس الخصائص

أي تحديد الحد ( ستخدم لتحديد حجم البيانات المدخلة في الحقلي ) : Field Size( حجم الحقل . 1

، ففي حالة آون البيانات المدخلة )و رقمية األقصى لبيانات الحقل المدخلة سواء أآانت بيانات نصية أ

في الحالة األفتراضية . حرفا أبجديا ) 255 – 0( بالمدى field size نصية فيتم تحديد حجمها

default أما في حالة آون البيانات المدخلة في حقل من . حرفا أبجديا ) 50( فتكون محددة بحجم

أما . long integerكون محدد بالخاصية عدد صحيح طويل نوع ترقيم تلقائي ، فأن حجم الحقل سي

، فأن حجم الحقل سيكون محدد numberفي حالة آون البيانات المدخلة في حقول نوعها رقمية

) . 2 – 2( بالجدول رقم أدناه بأحدى الخصائص التالية والموضحة

. الحقول الرقمية للبيانات في حددةحجم الحقل الم خاصية) : 2 – 2( جدول رقم

Setting Description Storage size

Byte Stores numbers from 0 to 255 (no fractions). 1 byte

Integer Stores numbers from –32,768 to 32,767 (no fractions). 2 bytes

Long Integer

(Default) Stores numbers from –2,147,483,648 to 2,147,483,647 (no fractions). 4 bytes

Single

Stores numbers from –3.402823E38 to –1.401298E–45

for negative values and from 1.401298E–45 to 3.402823E38 for positive values

( with fraction).

4 bytes

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٠

Page 13: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Double

Stores numbers from –1.79769313486231E308 to –4.94065645841247E–324

for negative values and from 4.94065645841247E–324 to

1.79769313486231E308 for positive values.

8 bytes

الذي نتعامل معه وأظهار تستخدم هذه الخاصية لعمل اعداد للحقل : ) Format( التنسيق . 2

.المعلومات بشكل معين

Allows you to specify how numbers , dates , times and text are displayed

and printed .

خال البيانات التي نتعامل معها يستخدم لعمل أو تحديد طريقة اد : ) Input Mask( قناع األدخال . 3

نسيطر بها على األدخال من خالل ، حيث) 3 – 2( وآما موضحة بالجدول رقم بشكل معين

.من لوحة المفاتيح F1الضغط على مفتاح

Allows you to simplify the data entry for fields that have the same format .

Such as phone number field by creating an input mask .

. الحروف والعالمات الخاصة بقناع األدخال ) : 3 – 2( جدول رقم

Character Description

0 Digit (0 to 9, entry required, plus [+] and minus [–] signs not allowed).

9 Digit or space (entry not required, plus and minus signs not allowed).

# Digit or space (entry not required; spaces are displayed as blanks while in Edit mode, but blanks are removed when data is saved; plus and minus signs allowed).

L Letter (A to Z, entry required).

? Letter (A to Z, entry optional).

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١١

Page 14: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

A Letter or digit (entry required).

a Letter or digit (entry optional).

& Any character or a space (entry required).

C Any character or a space (entry optional).

. , : ; - /

Decimal placeholder and thousand, date, and time separators. (The actual character used depends on the settings in the Regional Settings Properties dialog box in Windows Control Panel).

< Causes all characters to be converted to lowercase.

> Causes all characters to be converted to uppercase.

!

Causes the input mask to display from right to left, rather than from left to right. Characters typed into the mask always fill it from left to right. You can include the exclamation point anywhere in the input mask.

\ Causes the character that follows to be displayed as the literal character (for example, \A is displayed as just A).

بياناته من نوع الذيفي الحقل " Password" في حالة جعل قناع األدخال يأخذ الخاصية

شكل عالمة فقط علىضمن هذا الحقل ادخالها يتم صية أي قيمة ن فسيتم طباعة textة قيم نصي

، حيث تستخدم هذه الخاصية لجعل المعلومات تبدو سرية وغير مفهومة لألشخاص ( * ) النجمة

. الغير مخولين

د المراتب بعد الفاصلة العشرية دتستخدم لتحديد ع ) : Decimal Places( المراتب العشرية . 4

The number of digits that allows you to specify the number of places to

display to the right of the decimal , it’s for numeric and currency field only .

.اضافته لكل حقل يتم هو األسم الذي يظهر في رأس الجدول ) : Caption( العنوان . 5

Allows you to define a default field label to appear on forms and reports

هي عبارة عن شرط يوضع في تلك الخانة ) : Validation Rule( قاعدة التحقق من الصحة . 6

.ذلك الشرط بالحقل بحيث التتعدى القيمة الموضوعة

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٢

Page 15: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

الرسالة التي تظهر في حالة ما اذا آانت يه :) Validation Text( نص التحقق من الصحة . 7

.شرط الذي يتم التعامل معه في قاعدة التحقق من الصحة مخالفة لل )المدخلة ( القيمة الموضوعة

هي القيمة التي يتم ادخالها في خصائص الحقل ، ) : Default Value( القيمة األفتراضية . 8

.والتي ستظهر تلقائيا عند التنفيذ

يجب ادخال ) نعم ( ، في حالة اختيار ) ال / نعم ( يوجد بها خياران ) : Required( مطلوب . 9

ففي حالة أرقام التلفونات مثال ليس بالضرورة . داخل الحقل واليجب ترآها خالية ) البيانات ( القيمة

خلة ممكن أن تكون القيمة المد ) .ال ( أن يكون لدى آل موظف رقم تلفون ففي هذه الحالة نختار

. ) في حالة نوع حقل البيانات نص ( من لوحة المفاتيح ) Space( بضغط مفتاح

حيث تساعدنا في سرعة المقصود بها عمل فهرسة للحقل بالكامل ، ) : Index( مفهرس . 10

:وجد فيها ثالثة خيارات تو .عن بيانات الحقل Searchingوالبحث Sortingترتيب

.سمح بتكرار بعض المعلومات تسمح بعمل فهرسة وت) : Yes Duplicate Ok( كرر نعم م -

.سمح بتكرار المعلوماتتسمح بعمل فهرسة والت: Yes ( No Duplicates )( نعم غير مكرر -

.سمح بعمل فهرسة تال) : No( ال -

:مالحظـة

صوص المكتوبة بداخله تظهر بشكل ، فنستطيع جعل الن) Memo( اذا آان نوع بيانات الحقل -

.من لوحة المفاتيح ) Ctrl + Enter( متدرج من خالل ضغط مفتاحي

ادراج صورة في الحقل عند التنفيذ ، وذلك من خالل األمر التالي ) OLE( يمكن بأستخدام آائن -

خالل األمر التالي ، يتم ذلك من) Hyperlink( ألظهار األرتباط التشعبي على بيانات الحقل -

محرر أو : ) Expression Builder( يوجد معالج يطبق على خصائص الحقول ، يسمى بـ -

) Date/Time( مثال في حقل البيانات من نوع . منشأ التعابير ، حيث توضع داخله شروط معينة

) . 7 – 2( م رق بالشكل) Default Value( يمكن جعل خاصية القيمة األفتراضية

R.Click عند التنفيذ حقل البيانات على Insert Object Create from File

R.Click عند التنفيذ حقل البيانات على Hyperlink Edit Hyperlink

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٣

Page 16: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

محرر أو منشأ التعابير) : 7 – 2( شكل رقم

لليوم الحالي حسب تأريخ الحاسبة ( حيث أن هذا األمر سيظهر لنا التأريح الحالي

لئ السرعة في م الحقل دون الحاجة لملئها يدويا ، أي تلقائيا عند التنفيذ ولجميع بيانات) المستخدمة

. المكررة لوبيانات الحق

Saving Table: مع انشاء مفتاح أساسي اذا تطلب األمر حفظ الجدول 4 – 10 – 2بعد األنتهاء من اضافة حقول الى الجدول البد من حفظ تصميمه قبل أن نتمكن من اضافة

ي قائمة جدول في نافذة قاعدة وبعد حفظ الجدول سيظهر عنوانه ف. اليه ) بيانات الحقول ( سجالت

.آما يمكن تغيير أسم الجدول الذي تم تصميمه وحسب الرغبة . البيانات الرئيسية

Primary Key: المفتاح األساسي يتم بعد األنتهاء من تعيين أسماء الحقول وتحديد نوع البيانات المدخلة فيها مع خصائصها

يكروسوفت أآسـس تحديد اأثناء عملية الحفظ سيطلب منا برنامج م. لجدول األنتقال الى مرحلة حفظ ا

لذلك من المهم جدا معرفة ماهو المفتاح . فيما اذا آانت هناك حاجة ألنشاء مفتاح أساسي أم ال

األساسي ؟ حيث يعرف آل سجل في الجدول بشكل منفرد من خالل البحث عن مفتاح أساسي لتسهيل

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٤

Page 17: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

يتمولتعيين المفتاح األساسي . البيانات ودمجها وأسترجاع السجالت من الجدول عملية البحث عن

له ونقرة يمين بالفأرة وأختيار األمر أساسي مفتاحجعل من خالل تحديد الحقل المطلوب

Primary Key ، أو من قائمة تحرير )Edit (يط األدوات أو تحديد األيقونة الموجودة في شر.

ألي جدول ، فسوف ) مفتاح أساسي ( مصمم قاعدة البيانات تعريف أما في حالة نسيان

.يكروسوفت أآسـس بتذآيره عند األنتهاء من التصميم ايقوم برنامج م

ياألساس ليس بالضرورة أن نعمل مفتاح أساسي في الجدول ، حيث تكمن أهمية المفتاح :مالحظة

) . Relationships( حالة وجود عالقات بين الجداول في

A primary Key doesn’t allow Null values and must always have a unique

index. A primary Key is used to relate a table to Foreign Key in other tables.

Manipulating Data: معالجة البيانات 11 – 2أثناء عرض صفحة ) سجالت الحقول ( هناك عدة عمليات يمكن اجرائها على البيانات

:، وهذه العمليات هـي البيانات

) . Adding a new record( اضافة قيد جديد . 1

Simply drop down to a new line and enter the information .

) . Updating a record( تحديث قيد . 2

Simply select the record and field you want to update , and change it’s data

with what you want .

) . Deleting a record( حذف قيد . 3

Simply select the entire row and hit the Delete Key on the keyboard .

Viewing data in table: عرض البيانات في الجدول 12 – 2 :عرض البيانات في الجدول بطريقتين ، هما ت

حيث يتم عرض هيكلية الجدول ضمن قاعدة ) : Design View( طريقة عرض التصميم . 1

.اضافة حقول أو اجراء تعديالت عليها البيانات مع أمكانية

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٥

Page 18: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

ات وتحريرها هنا يتم ادخال البيان) : Datasheet View( طريقة عرض صفحة البيانات . 2

.ث عنها والبح

Switching Views:عرض التصميم ونافذة عرض صفحة البياناتاألنتقال بين نافذة 13 – 2

هي النافذة التي يتم فيها ادخال السجالت Datasheet Viewنافذة صفحة البيانات

وضحة ل وآما موالبيانات الى الجدول ، وللتنقل مابين صفحة البيانات وطريقة عرض تصميم الجدو

:نقوم بالتالي ) 8 – 2( بالشكل رقم

من قائمة عرض Design Viewمن نافذة صفحة البيانات يتم النقر على تصميم الجدول

View الموجودة في شريط القوائم ، أو بالنقر على األيقونة الموجودة في أقصى يسار شريط

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

األنتقال بين نافذة عرض التصميم ونافذة عرض صفحة البيانات) : 8 – 2( شكل رقم

Direction of data view: تغيير أتجاه نافذة عرض صفحة البيانات 14 – 2يكون من اليمين الى ل) Datasheet View( يمكن تغيير اتجاه عرض صفحة البيانات

اليسار آما هو الحال في الجداول العربية ، ومن اليسار الى اليمين في الجداول األنكليزية وذلك من

ةـي صفحـف دولـالج مـبتصميدء ـل البـقبتنفذ هـذه الخطـوات ( . خالل اتباع الخطوات التالية

Design View (.

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٦

Page 19: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Sorting record in a table: لجدول ترتيب السجالت في ا 15 – 2يا أو تنازليا ، فمثال يمكن اجراء فرز دأو ترتيب السجالت في الجدول تصاع) فرز ( يمكن

حسب ترتيب الحروف األبجدية لألسماء وذلك بوضع مؤشر الفأرة في حقل أسماء الطالب ثم نقر

فيتم بذلك ترنيب الموجودة في شريط األدوات) Sort Ascending( فرز تصاعدي آيقونة

عكس في حالة أختيار الفرز التنازليوال ) Z( وأنتهاءا الى ) A( األسماء أبتداءا من

) Sort Descending (

Data Filtering: تصفية البيانات 16 – 2والتي يتم من خاللها تقليص حجم عرض البيانات وذلك أنواع من التصفية ثالثةاك هن

وهذه األنواع الثالثة من التصفية تظهر عند النقر بزر . باألعتماد على نوع التصفية المستخدمة

حيث الفأرة األيمن على حقل البيانات المراد اجراء تصفية لبياناته فتظهر لنا أنواع التصفية الموجودة

، آما ويمكن الغاء عامل التصفية وذلك ) Apply Filter( ومن ثم اختيار األمر يتم أختيار احداها

:وهـي ) 9 – 2( وآما موضح ذللك بالشكل رقم ) Remove Filter(من خالل أختيار األمر

أنواع تصفية البيانات) : 9 – 2( شكل رقم

جميع بيانات الجدول ) الغاء ( أي تصفية ) : Filter By Selection( تصفية حسب األختيار . 1

.ة احدى بيانات حقوله المحدد) الصف ( عدا بيانات السجل

Tools Options International Default Direction

Left-to-right

Right-to-left

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٧

Page 20: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

هذا النوع من التصفية يعمل ) : Filter Excluding Selection( تصفية بأستثناء األختيار . 2

هار جميع ظنات حقوله مع ااحدى بيا تم فقط تصفية السجل المحددعكس النوع األول ، حيث ي

. مع بياناتها في الجدول) الغير محددة( السجالت األخرى

هنا يتم عمل تصفية لبيانات الجدول باألعتماد على شرط معين : ) Filter For( تصفية لــ . 3

ومن ،) 10 – 2( والموضح بالشكل رقم يوضع داخل المستطيل الظاهر أمام هذا النوع من التصفية

. من لوحة المفاتيح ) Enter( م الضغط على مفتاح ث

Filter Forتصفية بيانات الجدول بأستخدام شرط : ) 10 – 2( شكل رقم

ويسمى والذي يظهر في شريط األدوات الخاصة نوع رابع من التصفيةذلك هنالك اضافة الى. 4

ه تحديد الشرط المراد تنفيذه ألي حقل من ويتم في) : Filter by Form( تصفية حسب النموذج

هذا النوع من التصفية ) . 11 – 2( وآما موضح بالشكل رقم وبشكل مباشر حقول الجدول

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

. يميزه عن باقي األنواع األخرى ما

تصفية حسب النموذج لبيانات الجدول) : 11 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٨

Page 21: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Relationships between tables :قاعدة البياناتت بين الجداول في العالقا 17 – 2

ربط المباشر بين جدولين مختلفين العالقات هي عملية ربط بين الجداول حيث تفيد في ال

جعل برنامج ، حيث يمكن بواسطة العالقات ولكنهما يشترآان بحقل يكون هو حلقة الوصل بينهما

فمثال يرتبط . مايكروسوفت أآسـس يقوم بجلب المعلومات المهمة التي نحتاجها من جدولين أو أآثر

وآما جدول الطالب بجدول الدرجات من خالل حقل رمز الطالب والذي يكون مشترك لكال الجدولين

خالل حقل أسم جدول العمالء بجدول المبيعات من، ويرتبط ) 12 – 2( موضح بالشكل رقم

ان العالقات بين الجداول تختصر الزمن في ايجاد عالقة مباشرة بين جدولين أو أآثر . العميل

.وبالتالي تقليص التأخير في ايصال الناتج بأختصار دقيق

يمكن أن نستفيد من العالقات الحقا في ربط أآثر من جدول داخل نموذج البيانات

)Form ( والذي تتم فيه غالبية عمليات البرمجة )VBA ( بين الجداول ، اضافة الى امكانية الربط

) .وهو ما نسميه في التقرير بالتقارير الفرعية ( داخل تصميم التقرير

بعد تكوين العالقات بين الجداول يمكن عمل استعالم أو نموذج أو تقرير ، حيث سيتم

آما توفر العالقات امكانية ربط الجدول الرئيسي . معلومات عن عدة جداول في الوقت نفسه عرض

بأآثر من جدول فرعي ، آذلك امكانية الحذف والتحديث التلقائي بين بيانات الجدول الرئيسي

.والفرعي من خالل حقل الربط فقط

العالقة بين جدول الطالب وجدول الدرجات من خالل حقل الربط) : 12 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١١٩

Page 22: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

) matching( عدة البيانات من خالل مطابقة البياناتيتم عمل العالقات بين الجداول في قا

. primary keyمفتاح الربط بين حقول الجداول وعن طريق

In most cases , these matching fields are the primary key from one table ,

which provides a unique identifier for each record , and a foreign key in the

other table .

Defining the relationships : تعريف العالقات 1 – 17 – 2 اتـة العالقـاشـى شـن الـة الجدوليـالل اضافـن خـن مـة بين جدوليـالعالقتعريف يتم

)Relationships Window (يسيةمن خالل نقر بزر الفأرة األيمن على نافذة قاعدة البيانات الرئ

Database Window وأختيار األمرRelationships 13 – 2( وآما موضح ذلك بالشكل رقم (

، ثم اجراء عملية السحب ألحد حقول الموجودة في شريط القوائم Toolsأو من خالل قائمة أدوات ،

.له في الجدول الثاني حقل مطابق واألفالت الىالجدول األول

تعريف العالقات بين الجداول) : 13 – 2( شكل رقم

Types of Relationships: أنواع العالقات 2 – 17 – 2

A One-to-Many Relationship) : 1 ∞( عالقة . 1

دة قيود في يمتلك ع Aهي الطريقة األآثر شيوعا وأستخداما ، حيث أن آل قيد في الجدول

الحظ الشكل . Aيمتلك قيد واحد فقط في الجدول Bلكن آل قيد في الجدول Bالجدول

.) 14 – 2( رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٠

Page 23: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

عالقة واحد الى مجموعة بين جدولين في قاعدة البيانات) : 14 – 2( شكل رقم

A One-to-One Relationship) : 1 1( عالقة . 2

له قيد واحد Bوآل قيد في الجدول Bله قيد واحد فقط في الجدول Aآل قيد في الجدول

هذا النوع من العالقات اليستخدم بشكل واسع ألن جميع البيانات فيه تكون . Aفقط في الجدول

لتقسيم الجدول لعدة القات هو الغرض من استخدام هذا النوع من الع. مربوطة بجدول واحد فقط

) 15 – 2( الحظ الشكل رقم .، ولتوفير األمنية جداول

عالقة واحد الى واحد بين جدولين في قاعدة البيانات) : 15 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢١

Page 24: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

∞(عالقة . 3 ∞ : (A Many-to-Many Relationship

يمتلك B، وآذلك آل قيد في الجدول Bيمتلك عدة قيود في الجدول Aآل قيد في الجدول

هذا النوع من العالقات يتم العمل به فقط من خالل تعريف جدول ثالث . Aعدة قيود في الجدول

) . Junction Table( يسمى جدول الربط أو جدول األتصال

) : 16 – 2( ، الحظ الشكل رقم د من توفر الشروط التاليةـالجداول البولغرض تكوين العالقة بين

The kind of relationships that Microsoft Access creates depends on how the

related files are defined :

1. A One-to-Many Relationship is created if only one of the related fields is

a primary key or has a unique index .

2. A One-to-One Relationship is created if both of the related fields are

primary keys or have unique indexes .

3. A Many-to-Many Relationship is really two (One-to-Many Relationships)

with a third table called Junction table whose primary key consists of two

fields ــــــــ the foreign keys from the two other tables .

تصميم العالقات بين الجداول) : 16 – 2( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٢

Page 25: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Find & Replace: البحث واألستبدال 18 – 2ا بحرف أو نص أو رقم أخر ضمن حرف أو نص أو رقم ، وأستبداله للبحث عن تستخدم

يتم اجراء عمليتي البحث واألستبدال من خالل النقر على األمر و. بيانات السجالت التي تم انشاءها

خالل النقر على اآليقونة ، أو من Findمن شريط القوائم وأختيار األمر بحث Editتحرير

) . 17 – 2( بالشكل رقم فتظهر لنا النافذة الموجودة في شريط األدوات

نافذة البحث واألستبدال) : 17 – 2( شكل رقم

آتابة آلمة أو حرف أو رقم معين والذي نجري ) Find What مربع البحث عن( يتم في

) .ث عن بياناته ابتداءا يتم تحديد الحقل الذي نبح( Find Nextالبحث عنه ، ثم النقر على األمر

، وفي حالة Replaceوفي حالة استبدال آلمة أو حرف بأخر فيتم الضغط على األمر

. Replace Allالنقر على األمر بكلمة أخرى فيتم ستبدال الكلمة آينما وجدت في الحقل ا

) . Start of Fieldالبحث عادة يتم من بداية الحقل (

Table Navigation Buttons: الجدول )سجالت ( التنقل عبر قيود 19 – 2 ، فيتم بأستخدام شريط التمرير) من سجل الى آخر ( لغرض التنقل عبر حقول الجدول

) Navigation bar ( الموضح بالشكل رقم )والموجود في أسفل يسار الجدول) 18 – 2

)Datasheet View ( رقم والذي يتكون من خمسة أوامر والموضحة في الجدول )4 – 2 . (

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٣

Page 26: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

التنقل عبر سجالت الجدول : ) 18 – 2( شكل رقم

.أزرار التنقل عبر سجالت الجدول مع وظائفها ) : 4 – 2( جدول رقم

Role Object

First Record : allows moving to the first record of the table .

Previous Record : allows to move one record back (if there is

one).

Record Indicator : Displays the number representing the

current record .

Next Record : allows moving you one record ahead .

Last Record : allows moving you to the last record of the

table .

New Record : use to enter a new record on the table .

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٤

Page 27: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Introduction: المقدمة 1 – 3وذلك من خالل آيفية عمل وتكوين ملف قاعدة بيانات في هذا الفصل سيتم التعرف على

الشئ المهم ذآره . سمح لنا بالتعامل مع ملفات القاعدة ت احدى آائنات الفيجوال بيسك والتي أستخدام

يذ العديد من المهام البرمجية ومنها تصميم قواعد هنا هو أن برنامج الفيجوال بيسك مصمم لتنف

، اال انه وبالرغم من األمكانيات التي يوفرها في تصميم قواعد البيانات يمكننا Databasesالبيانات

يكروسوفت أآسس االحصول على دعم أفضل من خالل أستغالل األمكانيات التي يوفرها لنا برنامج م

لذلك ومن أجل الحصول . ل مانحتاج اليه في تصميم قواعد البيانات حيث أنه مصمم أصال لتنفيذ آ

يكروسوفت أآسس وذلك من اعلى تصميم أفضل سنقوم بتصميم قاعدة بيانات بأستخدام برنامج م

مع تحديد نوع بيانات الحقول المطلوبة عن بيانات الملفخالل تصميم جدول لملف معين يحوي آافة

ومن ثم ة وتحديد الخصائص المتاحة لكل حقل من حقول الجدول ، آل حقل من الحقول المستخدم

من خالل استخدام آائن الربط ، وبذلك سيتم أستغالل فيجوال بيسكربط هذه القاعدة مع برنامج

يكروسوفت أآسس ، وهذا ال بيسك وبرنامج ماجميع األمكانيات المتوفرة لدى آـل من برنامج الفيجو

.هو المطلوب

Creating Database Programs: اء برامج قواعد البيانات انش 2 – 3من البرامج الكفوءة في التعامل مع قواعد البيانات ، حيث يعتبر برنامج لغة فيجوال بيسك

:وهذه الطرق ، هــي . المختلفة وبعدة طرق مختلفة يوفر لنا مرونة عالية للربط مع قواعد البيانات

. Data Control لمرتبط باألدخالعنصر التحكم ا .1

ي تحميل مكتبة الكائنات ، أ ) Record Set Object( آائن مجموعة السجالت .2

)DAO object library . (

. ADO Data Controlآائن البيانات .3

The Bound Input Control: عنصر التحكم المرتبط باألدخال 3 – 3بعنصر الوصول للبيانات حيث يعتبر بمثابة حلقة الوصل بين الفيجوال Dataمى الكائن يس

يمكن اعتبار . FoxProأو Oracleأو SQL Serverأو Accessبيسك وقواعد البيانات مثل

. MS-Access 97هو األساسي في عملنا حاليا للربط مع قواعد البيانات من نوع Dataالكائن

:لتي يرتبط بها هذا الكائن مع القاعدة ، هــي والخصائص ا

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٥

Page 28: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

1 .Database Name : تحديد المسار الكامل لقاعدة البيانات التي ( اسم القاعدة المختارة ومسارها

) .نريد األتصال معها

2 .Record Source : أي تحديد مصدر المختار من القاعدة ) جدول البيانات ( جدول المعطيات ،

. )تحديد اسم الجدول المعين من قاعدة البيانات الذي نريد التعامـل معه ( تالسجال

3 .Connect : نوع قاعدة البيانات المرتبط بها.

أما عنص التحكم أو الكائن الذي يرتبط بحقل البيانات الموجودة في الجدول فهو مربع النص

Text Box .لحقل ، هــي والخصائص التي يرتبط بها مع ا:

1 .Data Source : تحديد اسم عنصر التحكم من النوعData والمرتبط مع جدول في قاعدة

.بيانات ال

2 .Data Field : والذي نريد لعنصر التحكم أن يرتبط معه الجدول مناسم الحقل تحديد .

3 .Caption : األسم المعروض لعنصر التحكم ( العنوان.

4 .Name :برمجي لعنصر التحكم األسم ال)Text Box . (

والموضحة ) Data( ومن أهم الطرق والعمليات التي يتعامل معها آائن عنصر الوصول للبيانات

:، هــي ) 1 – 3( بالجدول رقم

. Add New Record: اضافة سجل جديد .1

. Save Current Record: حفظ السجل الحالي .2

. Cancel Update Current Record: الغاء تحديث السجل الحالي .3

. Delete Current Record: مسح السجل الحالي .4

. Move to First Record: األنتقال الى السجل األول .5

. Move to Last Record: األنتقال الى السجل األخير .6

. Move to Previous: األنتقال الى السجل السابق .7

. Move to Next: التالياألنتقال الى السجل .8

. Is Begin Of File: اختبار الوصول لبداية السجل .9

. Is End Of File: اختبار الوصول لنهاية السجالت .10

. Find First-criteria: البحث عن أول سجل يحقق الشرط .11

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٦

Page 29: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

. Find Next-criteria: البحث عن السجل التالي الذي يحقق الشرط .12

. لبيانات كائن عنصر الوصول لت المرتبطة بالعمليا) : 1 – 3( جدول رقم

Data.RecordSet.MovePrviouseData.RecordSet.AddNew

Data.RecordSet.MoveNextData.UpdateRecord

Data.Record.BOFData.UpdateControls

Data.RecordSet.EOFData.RecordSet.Delete

Data.RecordSet.FindFirst criteriaData.RecordSet.MoveFirst

Data.RecordSet.FindNext criteria Data.RecordSet.MoveLast

Records Navigation: أزرار التنقل عبر السجالت 4 – 3ينقلنا الى أي موقع ضمن الجدول المربوط به ، ولكن وفي حالة Data Controlان الكائن

: لك يكون من خالل الشفرات التالية فان ذ Command Buttonsاستخدام أزرار األوامر

1. Move to the First Record

Private Sub cmdFirst_Click()

On Error GoTo Error

Data1.Recordset.MoveFirst

Error:

If Err.Number = 30 Then

Exit Sub

End If

End Sub

2. Move to the Last Record

Private Sub cmdLast_Click()

On Error Resume Next

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٧

Page 30: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Data1.Recordset.MoveLast

End Sub

3. Move to the Next Record

Private Sub cmdNext_Click()

On Error Resume Next

Data1.Recordset.MoveNext

If Data1.Recordset.EOF Then

Data1.Recordset.MoveLast

End If

End Sub

4. Move to the Previous Record

Private Sub cmdPrevious_Click()

On Error Resume Next

Data1.Recordset.MovePrevious

If Data1.Recordset.BOF Then

Data1.Recordset.MoveFirst

End If

End Sub

Detect Current Record Position: تحديد موقع السجل الحالي 5 – 3والذي يعطينا القيمة Absolute Positionوقع السجل الحالي بأستخدام األيعازيتم تحديد م

لكي يكون واضح أمام المستخدم ،) رقم السجل ( الفعلية لموقع السجل الحالي مضافا اليه الرقم

. Record Countاأليعاز وبمساعدةذا ـه

Private Sub Data1_Reposition()

Data1.Caption = "Record : " & Data1.Recordset.AbsolutePosition + 1 _

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٨

Page 31: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

& " of " & _

Data1.Recordset.RecordCount

End Sub

: وآاألتي آذلك يجب آتابة الشفرة التالية على النموذج عندما يكون حدث النموذج نشطا ،

Private Sub Form_Activate()

On Error GoTo Error

DU = 0

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Error:

If Err.Number = 30 Then

Exit Sub

End If

End Sub

Adding New Record: اضافة سجل جديد 6 – 3حظة أنه بعد آل عملية اضافة جديدة يجب زيادة العداد الخاص سيتم اضافة قيد جديد مع مال

. ) Data( عنصر الوصول للبيانات بمؤشر آائن

Private Sub cmdNewRecord_Click()

Data1.Recordset.AddNew

Data1.Caption = Data1.Recordset.RecordCount + 1 _

& " of " & _

Data1.Recordset.RecordCount + 1

End Sub

Saving Current Record: حفظ السجل الحالي 7 – 3

: بعد تكوين سجل جديد يمكن حفظ بياناته من خالل آتابة الشفرة التالية

هذه العالمة تعني تكملة سطر البرنامج بالسطر الثاني

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٢٩

Page 32: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Private Sub cmdSaveRecord_Click()

Data1.UpdateRecord

Data1.Recordset.MoveLast

End Sub

OR

Private Sub cmdSaveRecord_Click()

Data1.UpdateRecord

Data1.Recordset.Bookmark = Data1.Recordset.LastModified

End Sub

.للسجل ) األخير ( تمثل تأشيرة أو دالة لبيان الموقع الحالي Bookmarkحيث أن

Cancel Saving: الغاء تحديث السجل الحالي 8 – 3مع مالحظة أنه يعمل فقط عند بقاء UpdateControls أليعازستخدم افي هذا المطلب ن

.المؤشر على السجل الحالي

Private Sub cmdCancelUpdate_Click()

Data1.UpdateControls

End Sub

Deleting Current Record: حذف السجل الحالي 9 – 3بعد اجراء عملية الحذف يتم الرجوع . حذف سجل يعني حذف قيد آامل مع جميع بياناته

ومن ثم مسح جميع الى السجل السابق وفي حالة األستمرار بعملية الحذف سنصل الى أول سجل

.سجالت الجدول

Private Sub cmdDelete_Click()

On Error GoTo Error

Data1.Recordset.Delete

Data1.Recordset.MovePrevious

If Data1.Recordset.BOF Then

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٠

Page 33: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Data1.Recordset.MoveFirst

End If

Error:

If Err.Number = 30 Then

Exit Sub

End If

End Sub

Searching: البحث عن بيانات الحقول 10 – 3من الوظائف المهمة التي تجرى على قاعدة البيانات هي البحث عن بيانات معينة داخل

معينة توضع مسبقا من قبل مصمم قاعدة البيانات ، والتي تساعدنا في حقول القاعدة وفقا لشروط

عليها ، آذلك لمعرفة فيما اذا آان عنصر ما البيانات واجراء التعديالت الالزمة سرعة عرض

وهي ايعاز Data Controlسيتم استخدام ايعازات البحث التابعة للكائن . موجود ضمن القاعدة أم ال

)FindFirst و ايعازFindNext ( . عن أول قيمة ضمن حقل حيث يستخدم األيعاز األول للبحث

أما األيعاز الثاني فيستخدم للبحث عن القيمة التالية لنفس بيانات الحقل مع امكانية معرفة . البيانات

:التالية اتمدى تكرار هذه القيمة ضمن الحقل نفسه ، وذلك من خالل آتابة الشفر

Searching for Number Field

Private Sub cmdSearchNo_Click()

On Error Resume Next

n = InputBox("Enter the Number")

Data1.Recordset.FindFirst "[Code]=" & n

If Data1.Recordset.NoMatch = True Then

MsgBox "Try Again", vbOKOnly, "Error Number"

End If

End Sub

أسم حقل الرقم المعرف في قاعدة بيانات أآسس

قد تم استخدام متغيرات وهي التاليفي البرنامج : مالحظة

)n , NA , DU , DA (وذلك في لذلك البد من تعريفها

Dim n As Integer : وآاألتي Generalقلئمة

Dim NA As String

Dim DU As Integer

Dim DA As Date

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣١

Page 34: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Searching For Birth Field

Private Sub cmdSearchDate_Click()

On Error Resume Next

DA = InputBox("Enter the Birth")

Data1.Recordset.FindFirst "[birth]=#" & DA & "#"

If Data1.Recordset.NoMatch = True Then

MsgBox "Try again", vbOKOnly, "Error Birth"

End If

End Sub

Searching For Text Field

Private Sub cmdSearchText_Click()

DU = 0

NA = InputBox("Enter The Name")

Data1.Recordset.FindFirst "[name]=' " & NA & " ' "

If Data1.Recordset.NoMatch = True Then

MsgBox "Try again", vbOKOnly, "Error Name"

Else

DU = DU + 1

End If

End Sub

Searching For Duplicate Text Field

Private Sub cmdDuplicate_Click()

Data1.Recordset.FindNext "[name]=' " & NA & " ' "

If Data1.Recordset.NoMatch = False Then

أسم حقل المواليد المعرف في قاعدة بيانات أآسس

أسم حقل األسم المعرف في قاعدة بيانات أآسس

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٢

Page 35: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

DU = DU + 1

Else

MsgBox "Duplicates of name are :" & DU, vbOKOnly, "Name Repeate"

End If

End Sub

Only Numeric Value: تحديد الكتابة الرقمية 11 – 3نقصد بتحديد الكتابة الرقمية هو جعل الخانة الخاصة بحقل الرقم أو التسلسل والممثلة من

أن يسمح لنا بأدخال قيم رقمية فقط داخل الصندوق ) Text Box( خالل آائن صندوق البيانات

. Keyboardوقفل باقي أزرار لوحة المفاتيح

البرنامج أدناه سيسمح لنا بأدخال أرقام فقط الى الصندوق الخاص بحقل األرقام مع تفعيل مفتاح

.فقط Deleteالحذف

Private Sub Text1_KeyPress(KeyAscii As Integer)

If Chr(KeyAscii) Like "[0-9]" Or KeyAscii = 8 Then

Else

KeyAscii = 0

End If

End Sub

) . 1 – 3( وبعد تنفيذ البرنامج سيظهر لنا ملف قاعدة البيانات بالشكل رقم

تنفيذ برنامج ملف قاعدة بيانات الطالب) : 1 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٣

Page 36: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Project References Microsoft DAO 3.51 Object Library

Visual Basic Database Object: يات في قواعد البيانات آائن المعط 12 – 3ان آائن المعطيات الرئيسي الذي يتعامل مع قواعد البيانات في الفيجوال بيسك برمجيا هو

يات وهو العنصر الذي يحدد سجالت المعط. ) Record Set Object( آائن مجموعة السجالت

أن مجموعة السجالت أو القيود تكون فيها البيانات مرتبة على . المستخدمة في برامج الفيجوال بيسك

) .أستعالم ( هيئة أعمدة وصفوف ، حيث تكون اما على شكل جدول آامل أو جزء من جدول

: من أهمها ، و) Record Set( لكائن مجموعة السجالت أنواع مختلفة بشكل عام هناك

) . Dynaset( وعة سجالت من نمط مجموعة ديناميكية مج .1

) . Table( مجموعة سجالت من نمط جدول .2

أي من غير استخدام ( لغرض ربط برنامج لغة فيجوال بيسك مع قواعد البيانات برمجيا : مالحظة

:وذلك عن طريق اختيار األمر التالي ، نحتاج الى مايسمى بمكتبة البرمجة ) Dataالكائن

) 2 – 3( الحظ الشكل رقم . MS- Access 97والذي يستخدم للربط مع قواعد البيانات من نوع

: من خالل اختيار األمر التالي Ms- Office XPآما ويمكن الربط مع أنواع اخرى مثل

Project References Microsoft DAO 3.6 Object Library

DAO Object Libraryمكتبة البرمجة تحميل) : 2 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٤

Page 37: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Dynaset – Type Record Set Data Objectآائن المعطيات 1 – 12 – 3 هي آائن المعطيات األآثر شيوعا وأستخداما) Dynaset( ان المجوعة الديناميكية

، وتستخدم في عمليات البحث والحذف والتحديث واألضافة واألنتقال عبر في الفيجوال بيسك

اآرة الحية بحجز جزءا من الذ متقوهذه المجموعة . سجالت القاعدة وغيرها من الوضائف األخرى

)RAM ( وأحيانا من القرص الصلب اذا آان حجم السجالت المطلوبة فيها أآبر من حجم الذاآرة

وتعتبر من الكائنات الوحيدة القابلة للتحديث والمستخدمة في قواعد البيانات المترابطة عبر . الحية

. ODBCنموذج

؟ ODBCوالـ DAOالـ ماالمقصود ب

قواعد و DAO (Data Access Object( آائن الوصول للبيانات آال من يعتبر

تستخدم لبرمجة بينية واجهات ODBC (Open Database Connectivity( البيانات المترابطة

والتي Application Programming Interfaces ( APIs )التطبيقات بلغة الفيجوال بيسك

واعد البيانات وبشكل مستقل عن نظام أدارة قواعد البيانات تمكننا من آتابة وتنفيذ برامج ق

)DBMS . (

للربط DAOبشكل عام يقوم مبرمجي قواعد البيانات بأستخدام آائن الوصول للبيانات

سك وذلكبين قواعد البيانات المصممة ببرنامج مايكروسوفت أآسـس مع برنامج لغة فيجوال بي

والذي) Microsoft Jet database engine( من خالل أستخدام محرك قواعد البيانات

database objectsآائنات الوصـول للبيانـات مثـل مجموعة من تجهيزبدوره سيقوم ب

يث أن آائن الوصول للبيانات ، ح recordset objects و querydef object tabledef and و

DAO يعمل بشكل أفضل مع ملفات قواعد البيانات التي يتم تصميمها من خالل برنامج

من ODBCمصادر قواعد البيانات المترابطة آذلك يمكن الوصول الى .مايكروسوفت أآسس

.ومحرك قواعد البيانات DAOخالل آائن الـ

التـة السجـن مجموعـائـدام آـخـات بأستـد البيانـج قواعـم برامـد تصميـعن :ةــمالحظ

)Record Set Object (ان الكائن ـفData Control الى في هذه الحالة نحتاج. لن يستخدم

: تعريف متغيرين وهما على التوالي

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٥

Page 38: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Dim DB As Database ‘ ت أآسساتحديد أسم قاعدة بيان

Dim RS As Recordset ‘ الجدول من القاعدة أسم تحديد

ات ـدة البيانـل مع قاعـآيفية التعام يبين) 3 – 3( والموضح بالشكل رقم اهـج آدنـالبرنام

. Dynasetمن نوع ) Record Set ( ن البرمجةـالل آائـن خـم

Add New Record :

Private Sub cmdAddUpdate_Click()

Set DB = DBEngine.OpenDatabase(App.Path + "\new.mdb")

Set RS = DB.OpenRecordset("info", dbOpenDynaset)

RS.AddNew

Dynasetقاعدة البيانات من خالل الكائن مجموعة السجالت برمجة ملف: ) 3 – 3( شكل رقم

أو المسار Directoryأيعاز يستخدم لتحميل الدليل Path الخاص بقاعدة بيانات أآسـس والموجودة ضمن ن برنامج والذي يحوي آال م Folderالمجلد نفـس

. قاعدة بيانات أآسـس لغة فيجوال بيسك و

أسم قاعدة بيانات أآسـس

قاعدة بيانات أآسـسالجدول في أسم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٦

Page 39: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

If Text1.Text = " " Or Text2.Text = " " Or Text3.Text = " " Then

MsgBox "Try Again", vbCritical, "Fields Are Empty"

Exit Sub

End If

RS.Fields("number") = Text1

RS.Fields("name") = Text2

RS.Fields("age") = Text3

RS.Update

MsgBox "Thank You", vbOKOnly, "Record Is Created"

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

RS.Close

End Sub

Change The Last Name :

Private Sub cmdAllUpdateEnd_Click()

On Error Resume Next

Set DB = DBEngine.OpenDatabase(App.Path + "\new.mdb")

Set RS = DB.OpenRecordset("info", dbOpenDynaset)

NA = InputBox("Enter The New Name", "Replace Name")

RS.MoveLast

RS.Edit

RS.Fields("name") = NA

RS.Update

RS.MoveFirst

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٧

Page 40: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Do Until RS.EOF = True

Print RS.Fields("name")

RS.MoveNext

Loop

RS.Close

End Sub

Display All Names :

Private Sub cmdAllNames_Click()

Set DB = DBEngine.OpenDatabase(App.Path + "\new.mdb")

Set RS = DB.OpenRecordset("info", dbOpenDynaset)

RS.MoveFirst

Cls

Do Until RS.EOF = True

Print RS.Fields("name")

Print

RS.MoveNext

Loop

RS.Close

End Sub

The Table – Type Record Set Data Object آائن المعطيات 2 – 12 – 3 الفهرسة دالئل البحث وتعريف ويحتاج بذلك الى ) Seek( هذا النمط يستخدم ايعاز البحث

)Index ( حيث يستخدم في عمليات البحث المفهرس.

وعرضها البيانات الموجودة ضمن القاعدة والبحث عن قراءة يقوم ب البرنامج التالي

. Index Field بأستخدام خاصية

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٨

Page 41: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Add-Ins Visual Data Manager File New

Microsoft Access Version 7.0 MDB

: خطوات عمل البرنامج

Index الفهرسةت ومن ثم نخصص ألحد حقول القاعدة دليل بياناالنقوم بتصميم قاعدة .1

. عند ربطها مع برنامج لغة فيجوال بيسك برمجيا والذي من خالله سيتم التعامل مع القاعدة

) 4 – 3( بالشكل رقم وآما موضح يمكن تصميم قاعدة البيانات من داخل الفيجوال بيسك .2

: وذلك من خالل األمر التالي

تصميم قاعدة البيانات من داخل الفيجوال بيسك) : 4 – 3( شكل رقم

سنقوم األن بكتابة البرنامج التالي وذلك بأستخدام آائن البرمجة مجموعة السجالت

) . 5 – 3( والذي سيظهر عند التنفيذ بالشكل رقم Tableنوع من

Dim N As Integer

Dim DB As Database

Dim RS As Recordset

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٣٩

Page 42: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Private Sub cmdSearch_Click()

Cls

On Error GoTo error

Set DB = DBEngine.OpenDatabase(App.Path + "\new.mdb")

Set RS = DB.OpenRecordset("info", dbOpenTable)

N = InputBox("Enter the Number")

error:

If Err.Number = 13 Then

Exit Sub

End If

RS.Index = "ndx" ‘ الرقم تخصيص دليل الفهرسة على حقل

RS.Seek "=", N

If RS.NoMatch = False Then

Print "Number : " & RS.Fields("no")

Print "Name : " & RS.Fields("Name")

Print "Birth : " & RS.Fields("Birth")

Print "Age : " & RS.Fields("Age")

End If

End Sub

Tableبرمجة ملف قاعدة البيانات من خالل الكائن مجموعة السجالت ) : 5 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٠

Page 43: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

ADO Data Controlآائن البيانات 13 – 3، حيث يساعدنا في Data Controlالمرتبط باألدخال هذا الكائن عنصر التحكميشبه

اجراء آافة العمليات المطلوبة من وفتح القاعدة ومن ثم الربط المباشر والسريع مع قواعد البيانات

وذلك من خالل مجهز قواعد البيانات )، األنتقال من قيد ألخر اضافة قيد ، حذف قيد ، تحديث قيد (

OLE DB provider آذلك امكانية عمل تقرير ،Report ح خالصة العمل ، وغيرها من يلتوض

. األمكانيات األخرى

بسهولة أستخدامه ADO (Microsoft ActiveX Data Object( يتميز آائن الـ

مع األمكانيات التي يوفرها ع قواعد البيانات وحجزه مساحة صغيرة من الذاآرة وسرعته في الربط م

، حيث client / server and web-based application في بناء التطبيقات الخاصة بالشبكات

من خالل نقل البيانات من الـ RDS (Remote Data Service( يقوم بخدمة البيانات عن بعد

Server الى الـClient صفحة الشبكة أو عبرWeb page ليتم معالجة البيانات وأجراء العمليات

ضمن دورة واحدة Serverالى الـ ثم أرجاعها Clientمن قبل الـ updateالمطلوبة عليها

Connect the ADO Data Control to a data-bound control such as the Data

Grid, Data Combo, or Data List control by setting the Data Source property

to the ADO Data Control.

من خالل ) 6 – 3( والموضح بالشكل رقم الى المشروع ) ADO( يتم اضافة آائن

: اختيار األمر التالي

Project Components Microsoft ADO Data Control 6.0

( OLEDB )

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤١

Page 44: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

ADOاضافة آائن الوصول للبيانات ) : 6 – 3( شكل رقم

الى النموذج حيث سيظهر لنا ADO سيتم اضافة الكائن Applyبعد الضغط على األمر

قاعدة بيانات أآسـس مع ربط الفي الكائن في صندوق األدوات بهذا الشكل وبأمكاننا استخدامه

: وبطريقتين

TextBoxالى النموذج وآذلك اضافة مربعين نص ADOيتم اضافة الكائن :الطريقة األولى

) . 7 – 3( آما في الشكل رقم Labelوصندوقين للعنوان

ADOبرنامج قاعدة البيانات بأستخدام الكائن متصمي) : 7 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٢

Page 45: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

موضح آما اضافتها الى النموذج والتي تم )األدوات ( نقوم بتغيير خصائص الكائنات

. ) 2 – 3( بالجدول رقم

. تغيير خصائص الكائنات ) : 2 – 3( قم جدول ر

القيمة الخاصية األداة

Label1 Caption Name

Label1 Font Bold- Size 10

Label2 Caption Telephone Number

Label2 Font Bold- Size 10

Text1 Text فارغ

Text1 Alignment Right justify

Text2 Text فارغ

Text2 Alignment Right justify

). 8 – 3( آما بالشكل رقم Customائص الخاصية صونختار من صندوق الخ ADOنختار األداة

ADOخصائص آائن البيانات ) : 8 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٣

Page 46: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

، أو من خالل نقر زر ) 9 – 3( الموضحة بالشكل رقم ستظهر لنا صفحة الخصائص

. ADODC Propertiesوأختيار األمر ADO الفأرة األيمن على الكائن

ADOصفحة خصائص آائن البيانات ) : 9 – 3( شكل رقم

ثم نوم ADOسنقوم األن بربط قاعدة بيانات أآسس بالفيجوال بيسك عن طريق األداة

:، وآاألتـي ADOربط حقول القاعدة مع الفيجوال بيسك ايظا من خالل األداة

Use ODBC Connection Stringاألمر الثاني Property Pagesنختار من نافذة

.) 10 – 3( آما بالشكل رقم التي بجوارها Newثم الضغط على آلمة ن، وم

ADOم آائن بيانات ربط برنامج الفيجوال بيسك بقاعدة بيانات أآسـس بأستخدا) : 10 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٤

Page 47: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

مصدر ار الثاني والذي من خالله سيتم تحديد نوع ستظهر لنا نافذة أخرى نختار منها األختي

. Nextاألمر والضغط على ) 11 – 3( البيانات وآما موضح بالشكل رقم

تحديد نوع مصدر البيانات) : 11 – 3( شكل رقم

نختار ) 12 – 3( آما في الشكل رقم ستظهر لنا نافذة أخرى ألختيار نوع قاعدة البيانات

. Microsoft Access Driver ( *.mdb ) اـمنه

أآسـس من نوع مايكروسوفت بياناتالقاعدة تحديد) : 12 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٥

Page 48: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

ستظهر لنا نافذة أخرى . Finishعلى الزر نضغط و ستظهر نافذة أخرى ، Nextضغط ن

مع أعطاء أسم لمصدر يتم فيها تحديد مكان قاعدة البيانات على الجهاز) 13 – 3( آما في الشكل

.بيانات القاعدة

اعدة بيانات أآسـس وأسم مصدر بياناتهامكان ق تحديد) : 13 – 3( شكل رقم

)عبارة أختيارية( Telephone Indexنكتب العبارة Data Source Nameفي خانة الـ

وأختيار قاعدة البيانات ) 13 – 3( بالشكل رقم الموضح Select ، ثم الضغط على األمر

ثم الضغط ) األسم ، رقم الهاتف ( المصصمة مسبقا والتي تحتوي على جدول مكون من حقلين

الرئيسية ، نقوم بأختيار العبارة Customبعد ذلك سنعود الى نافذة . على األمر موافق

"Telephone Index "رقم من القائمة المنسدلة الموجودة في األختيار الثاني ، وآما في الشكل

Telephone" بالعبارة األختيارية والمحدد أسم مصدر البيانات أختيارث سيتم ، حي) 14 – 3(

Index " وأخيرا يتم الضغط على األمر موافق ،OK .

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٦

Page 49: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

أسم مصدر بيانات القاعدة أختيار) : 14 – 3( شكل رقم

يأتي األن . ADOاألداة األن قمنا بربط قاعدة بيانات أآسس بالفيجوال بيسك عن طريق

Record Sourceالذي سنقوم بأحضار البيانات منه ، وذلك بتغيير الخاصية جدولالدور لتحديد ال

حيث سيتم أختيار أسم الجدول المصمم مسبقا ) 15 – 3( والتي ستظهر بالشكل رقم ADOلألداة

.ضمن قاعدة البيانات

جدول قاعدة البيانات تحديد) : 15 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٧

Page 50: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

، حيث سنجعلها ) 3 – 3( والموضحة بالجدول رقم بعد ذلك يأتي دور صناديق النصوص

. بعض خصائصها وذلك من خالل تغييرعرض بيانات القاعدة تقوم ب

. تغيير خصائص صناديق النص ) : 3 – 3( جدول رقم

القيمة الخاصية األداة

Text1 Data Source Adodc1

Text1 Data Field Name

Text2 Data Source Adodc1

Text2 Data Field Telephone Number

كن مع ذلك قمنا بعمل برنامج وربطناهن لم يتم آتابة سطر برمجي واحد ولالى األ

يك األسهم الموجودة على نقوم أخيرا بتنفيذ البرنامج ونختبره حيث نستطيع تحر. بيانات البقاعدة

. لكي نبدل بين السجالت Adodc1األداة

، Access 2003نستطيع ربط الفيجوال بيسك مع قاعدة بيانات ADOبأستخدام األداة :مالحظة

. Data Controlوهذا مايمزها عن األداة Access 97اضافة الى قاعدة بيانات

قاعدة مع بياناتها جدول الحقول عرض والى النموذج ADOيتم اضافة الكائن : الطريقة الثانية

Data Grid Controlحيث سيتم أستخدام الكائن ، دون الحاجة ألستخدام آائن صندوق النص

:وذلك من خالل أختيار األمر التالي Tool Boxوالذي سيظهر في صندوق األدوات

Customن صندوق الخائص الخاصية ونختار م ADO الكائن اريختأبعد ذلك نقوم ب

األمر الثالث منها نختار ،) 9 – 3( الموضحة بالشكل رقم Property Pagesفتظهر لنا نافذة

Use Connection String ثم نضغط فوق األمرBuild فتظهر لنا نافذة خصائص الربط

Project Components Microsoft Data Grid Control 6.0

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٨

Page 51: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Microsoft jet 4.0 OLE DBحيث نختار منها الخاصية ) 16 – 3( الموضحة بالشكل رقم

Provider .

نافذة خصائص ربط البيانات) : 16 – 3( شكل رقم

من خالل أختيار مع القاعدة المصصمة مسبقا ADOونقوم بربط الكائن Nextثم نضغط

من خالل مع امكانية اختبار الربط، ) 17 – 3( وآما موضح بالشكل رقم Connectionاألمر

. Test Connectionمر األ

مع القاعدة وأختبار الربط ADOربط آائن البيانات ) : 17 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٤٩

Page 52: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

آما في الشكل رقم مع الجدول الموجود في قاعدة البيانات بعد ذلك نقوم بربط الكائن

بهذه الحالة . ق وافمومن ثم ضغط Record Sourceوذلك من خالل أختيار األمر ) 18 – 3(

.مع القاعدة ADO قـد تم ربط الكائن

بجدول القاعدة من خالل مصدر البيانات ADOربط آائن البيانات ) : 18 – 3( شكل رقم

Data Sourceيتم من خالل خاصية ADOمع األداة Data Gridلغرض ربط الكائن و

عرض بذلك سيتم Retrieve Fieldsومن ثم نقر زر الفأرة األيمن على آائن الشبكة وأختيار األمر

والحذف والتحديث ، وآما )أضاقة قيد جديد ( الحقول وبياناتها مع أمكانية أجراء عمليات األضافة

) . 19 – 3( موضح ذلك بالشكل رقم

Data Grid من خالل آائنأجراء العمليات المختلفة على بيانات القاعدة ) : 19 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٠

Page 53: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

) . 20 – 3( وبعد التنفيذ سيظهر لنا البرنامج بالشكل رقم

Data Gridن خالل آائن بالقاعدة م ADOربط آائن البيانات ) : 20 – 3( شكل رقم

Creating Reports in Databases: التقارير في قواعد البيانات 14 – 3

بعد األنتهاء من ربط قاعدة بيانات أآسس ببرنامج لغة فيجوال بيسك نستطيع عمل ورقة

هذا مانطلق ، ووطباعتها لتلخيص البيانات مع أمكانية تنسيقها بما يتالئم وحسب رغبة المصصم

" .التقرير " عليه أسم

:ولغرض عمل التقرير نتبع الخطوات التالية

: التالي امج لغة فيجوال بيسك نختار األمرمن شريط القوائم والذي يظهر في برن .1

) . 21 – 3( الشكل رقم سيظهر لنا

Project Add Data Environment

الى المشروع Data Environmentاضافة بيئة البيانات ) : 21 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥١

Page 54: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

: التالي من شريط القوائم نختار األمر .2

) . 22 – 3( سيظهر لنا الشكل رقم

اضافة تقرير لبيانات القاعدة الى المشروع) : 22 – 3( شكل رقم

ننقر زر الفأرة Data Environmentوالذي يظهر في نافذة Connectionمن األمر .3

وآما Next، ثم نحدد نوع خاصية الربط ونضغط Propertiesاأليمن ونختار األمر

. ) 23 – 3( بالشكل رقم موضح

Project Add Data Report

Connection1 Properties Microsoft jet 4.0 OLE

DB Provider

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٢

Page 55: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

آما في تحديد قاعدة بيانات أآسس المصصمة مسبقا والتي سنربطها مع الفيجوال بيسك .4

. مع أمكانية أختبار عملية الربط مع القاعدة) 24 – 3( الشكل رقم

تحديد أسم قاعدة البيانات المصممة مسبقا ) : 24 – 3( شكل رقم

تحديد نوع خاصية ربط التقرير) : 23 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٣

Page 56: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

لذلك، والذي من خالله سنقوم بعرض التقرير Command Buttonنقوم بعمل زر أمر .5

زر الفأرة األيمن على األمر طه مع بيانات القاعدة وذلك من خالل نقر البد من رب

Connection1 ونختار األمرAdd Command ثم ننقر زر الفأرة األيمن على األداة ،

Command1 ونختار األمرProperties 25 – 3( ، وآما موضح ذلك بالشكل رقم . (

عرض التقرير من خالل آائن زر األمر) : 25 – 3( شكل رقم

واألمر Database Objectنقوم بتحديد الجدول الذي سنعرض بياناته من خالل األمر .6

Object Name سنالحظ أن األداة .وأخيرا نضغط موافقCommand1 مرتبطة مع

) . 26 – 3( آما في الشكل رقم حقول الجدول

ربط آائن زر األمر مع حقول الجدول) : 26 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٤

Page 57: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

آما في الشكل رقم نقوم بتصميم واجهة عرض التقرير Data Report1من نافذة الـ .7

الحقول المستخدمة في أو اسم عناويين( Labelsمن خالل أضافة عناويين ) 27 – 3(

مع أمكانية أضافة صور ورسوم واجراء Page Headerوذلك في صفحة ) جدول البيانات

نقوم بأضافة Detailوفي صفحة . Propertiesالتنسيقات المطلوبة عليها من خالل نافذة

. والتي سيتم فيها عرض بيانات الحقول Text Box أربعة صناديق نص

تصميم واجهة عرض التقرير) : 27 – 3( شكل رقم

من خالل نافذة خصائص Data Environmentمع الـ Data Reportنقوم بربط الـ .8

. Data Sourceختيار الخاصية وأ Data Reportالـ

من خالل نافذة خصائص الـ Commandمع الـ Data Reportنقوم بربط الـ .9

Data Report وأختيار الخاصية Data Member .

من خالل نافذة Commandمع الـ Text Boxنقوم بربط آائنات صندوق النص .10

. Data Memberوأختيار الخاصية Data Reportخصائص الـ

والتي Data Fieldنقوم بربط آل آائن على حدة مع حقول القاعدة من خالل خاصية الـ .11

. Data Reportتظهر في نافذة خصائص الـ

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٥

Page 58: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

الى النموذج ونكتب بداخله الشفرة التالية Command Buttonأخيرا نقوم باضافة زر أمر .12

) : Code Windowمن نافذة الشفرة الخاصة بالكائن (

Private Sub Command1_Click()

DataReport1.Show

End Sub

ستظهر لنا ورقة تحتوي على ملخص لكافة الحقول وبياناتها Open Reportوعند النقر على األمر

. HTML والتي يطلق عليها بالتقرير مع أمكانية طباعتها بجهاز الطابعة وخزنها على شكل ملف

.) 28 – 3( عند التنفيذ سيظهر لنا البرنامج بالشكل رقم

تنفيذ برنامج قاعدة البيانات مع عرض تلخيص لورقة العمل) :28–3(شكل رقم

طباعة ملخص ورقة العمل الخاصة ببيانات القاعدة) : 29 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٦

Page 59: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Database Using Wizard: قاعدة البيانات بأستخدام المعالج 15 – 3 في تصميم برامج قواعد البيانات بدون آتابة أي شفرة برمجية Wizardيستخدم المعالج

)Code (، ولعمل ذلك نتبع الخطوات التالية:

. MS-Access 97ن من نوع قاعدة البيانات بأستخدام المعالج يجب أن تكو: مالحظة

نختار األمر Add-Insمن القائمة ونقوم بفتح مشروع جديد في الفيجوال بيسك .1

Add-In Manager .

نضغط عليها مرتين حتى تظهر VB6 Data Form Wizardتظهر لنا قائمة نختار منها .2

. OKوافق ، ثم نضغط م ) 30 – 3( الشكل رقم آما في Loadedبجوارها آلمة

تكوين قاعدة البيانات بأستخدام المعالج) : 30 – 3( شكل رقم

الى Data Form Wizardمرة ثانية سنالحظ أنه قد تم اضافة Add-Insنفتح القائمة .3

عندها ستظهر لنا نافذة نضغط على ، نقوم بأختيارها) 31 – 3( آما في الشكل رقم القائمة

. Nextالزر

وذج البياناتممعالج ن) : 31 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٧

Page 60: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

) 32 – 3( والموضحة بالشكل رقم ستظهر لنا نافذة جديدة تطلب منا تحديد نوع الربط .4

. Accessنختار

تحديد نوع الربط مع قاعدة البيانات) : 32 – 3( شكل رقم

ها التي نريد ستظهر لنا نافذة تطلب منا تحديد أسم القاعدة Nextبعد الضغط على األمر .5

آما في الشكل Nextومكانها ، حيث سنقوم بتحديد مكان القاعدة ونضغط مرة أخرى

. ) 33 – 3( رقم

تحديد أسم قاعدة بيانات أآسـس ومسارها) : 33 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٨

Page 61: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

تطلب منا تحديد أسم النموذج ) 34 – 3( والظاهرة بالشكل رقم تظهر لنا نافذة جديدة .6

Form ده ثم نحدد النوع بــ الذي سنجعل فيه البرنامج ، حيث سنقوم بكتابة األسم الذي نري

ADO Code األمر ، بعدها نضغط علىNext .

في حالة آون القاعدة تحتوي ( تظهر نافذة تطلب منا تحديد أسم الجدول الذي سنستخدمه .7

بعد أختيار الجدول ستظهر على . ) 35 – 3( آما في الشكل رقم )على أآثر من جدول

ة في الجدول حيث سنقوم بأختيار الحقول التي نريدها مع اليسار قائمة بالحقول الموجود

. Nextنضغط ، ثم أمكانية عمل فهرسة للحقل

جدول قاعدة البيانات والحقول المطلوبةأختيار أسم ) : 35 – 3( شكل رقم

تحديد أسم نموذج قاعدة البيانات بأستخدام المعالج) : 34 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٥٩

Page 62: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

) 36 – 3( آما في الشكل Select Allالتي ستظهر في النموذج نقوم بأختيار جميع األزار .8

. رةبة أي شفبذلك فقد قمنا بعمل برنامج بدون أن نقوم بكتاو Finishوأخيرا Nextثم ضغط

ستخدام المعالجلتحكم الخاصة بقاعدة البيانات بأتحميل أزرار ا) : 36 – 3( شكل رقم

حيث يمكن أجراء عمليات ) 37 – 3( نامج بعد التنفيذ بالشكل رقم سيظهر لنا البرأخيرا .9

امر والتي تظهر األضافة وحذف قيد وتحديث قيد وأنهاء البرنامج من خالل أزرار األو

بالصورة أدناه مع مالحظة أن آل زر من هذه األزرار يحتوي على شفرة خاصة به تم

. أنشائها من قبل البرنامج نفسه والتي يمكن الدخول اليها من خالل نافذة الشفرة

تنفيذ برنامج قاعدة البيانات بأستخدام المعالج) : 37 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٠

Page 63: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

) 38 – 3( آما في الشكل رقم في حالة آون المشروع يحتوي على أآثر من نموذج: مالحظة

وذلك من خالل أختيار في المقدمة أثناء تنفيذ المشروع نستطيع اظهار النموذج الذي نريده أن يظهر

:األمر التالي

Structured Query Language ( SQL): لمهيكلةلغة األستفسارات ا 16 – 3دة البيانات يانات معينة ضمن قاعلألستعالم عن بضمن اية لغة برمجية هذه اللغة تستخدم

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

بواسطة هذه اللغة يمكن استرجاع البيانات التي نحتاجها من القاعدة ، أو تصفيتها حسب شرط معين

. Relational DBقواعد البيانات العالئقية ، وآذلك أدارة أو ترتيبها تصاعديا أو تنازليا

Types of SQL) : البنيوية ( أنماط لغة األستفسارات المهيكلة 1 – 16 – 3في أي مكان من خالل أسم الجدول أو أسم SQL Selectيمكن أستخدام عبارة األختيار

ألستدعاء أسم جدول SQLعبارة الـ األستعالم أو أسم الحقل ، فعلى سبيل المثال يمكن أستخدام

هناك أربعة أشكال بشكل عام . Open Recordsetقاعدة البيانات بطريقة آائن مجموعة السجالت

:، وهي آاألتي SQLرئيسية لتنفيذ لغة

: عرض جميع حقول وسجالت قاعدة البيانات ، والصيغة العامة لها . 1

Project Project1 Properties General Startup Object

تحديد النموذج األول أثناء تنفيذ المشروع ) : 38 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦١

Page 64: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Select * from < table name > .

:، والصيغة العامة لها هاجميع سجالتمع عض حقول القاعدة عرض ب. 2

Select field , field2 from < table > .

:، والصيغة العامة لها باألعتماد على شرط ما رض جميع حقول القاعدة وبعض سجالتها ع. 3

Select * from table where < condition > .

Ex : Select * from info where [ Number ] > 2

:، الصيغة العامة لها باألعتماد على شرط ما عرض بعض حقول وسجالت القاعدة . 4

Select field1 , field2 from table where < condition >

Ex : Select Number , Name from Info where [ Number ] > 2

types programming SQL: برمجة أنماط لغة األستفسارات المهيكلة 2 – 16 – 3

: SQLالبرنامج التالي يوضح آيفية عمل لغة

تحتوي على جدول واحد MS-Access 97نقوم بتصميم قاعدة بيانات مايكروسوفت أآسس . 1

يضـم ثالثـة حقـول ولتكـن أسمائهـا علـى التوالـي “ Information “وليكـن أسمـه

“Number , Name , Marage “ 39 – 3( كل رقم آما في الش ( .

نقوم بفتح مشروع جديد بلغة الفيجوال بيسك ونقوم بأضافة آائن الوصول الى البيانات. 2

Data Control الى النموذج مع أضافة آائن عرض البيانات الشبكيData Bound Grid ،

: وذلك من خالل أختيار األمر التالي Project Component Data Bound Grid Control 5.0 ( SP3 )

جدول قاعدة بيانات أآسـس) : 39 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٢

Page 65: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

، ومن ثم ربطه مع Database Nameمع القاعدة من خالل خاصية Data نقوم بربط آائن. 3

. Record Sourceالجدول من خالل خاصية

، ثم Data Sourceمن خالل خاصية Dataمع الكائن Data Bound Gridنقوم بربط آائن . 4

تيار األمر نقوم بربطه مع حقول القاعدة من خالل نقرة يمين بزر الفأرة على آائن الشبكة وأخ

Retrieve Fields مع أمكانية جعل آائن الشبكة قابل ألجراء عمليات األضافة والحذف والتحديث ،

. Propertiesعليه من خالل األمر

أضافة قيد حيث سيتم عند النقر عليهالى النموذج Command Buttonأمر نقوم بأضافة زر. 5

أثناء النقر عليه وآما يقوم بحذف قيد من الشبكة مر ثانيآما نقوم بأضافة زر أ جديد الى الشبكة ،

: وذلك من خالل آتابة الشفرات التالية ) 40 – 3( موضح ذلك بالشكل رقم

Private Sub cmdaddnew_Click()

Data1.Recordset.AddNew

Data1.Caption = Data1.Recordset.RecordCount + 1 _

& " of " & _

Data1.Recordset.RecordCount + 1

End Sub

SQLقاعدة البيانات بأستخدام عبارات الـ ) : 40 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٣

Page 66: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Private Sub cmddelete_Click()

On Error Resume Next

Data1.Recordset.Delete

Data1.Recordset.MovePrevious

If Data1.Recordset.BOF Then

Data1.Recordset.MoveFirst

End If

End Sub

Private Sub Data1_Reposition()

Data1.Caption = "Record : " & Data1.Recordset.AbsolutePosition + 1 _

& " of " & _

Data1.Recordset.RecordCount

End Sub

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

End Sub

ثيرها في عرض بيانات الجدول ، وذلك من ومالحظة تأ SQLنقوم األن بأستخدام أيعازات لغة . 6

Loadخالل آتابة الشفرات التالية داخل النموذج عندما يكون حدث النموذج في حالة التحميل

:وآاألتي

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٤

Page 67: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Data1.Recordset.MoveFirst

Data1.DatabaseName = App. Path + "\students.mdb"

Data1.RecordSource = "select Name from information "

End Sub

). 41 – 3( رقم سيتم عرض بيانات حقل األسم فقط ، وآما موضح ذلك بالشكلبعد تنفيذ البرنامج -

Select Nameبأستخدام عبارة فقط عرض بيانات حقل األسم ) : 41 – 3( شكل رقم

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Data1.DatabaseName = App.Path + "\students.mdb"

Data1.RecordSource = "select number,name from information" _

& " where [number] > 5 "

End Sub

أسم قاعدة البيانات

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٥

Page 68: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

البيانات التي حقل حقل الرقم واألسم فقط مع عرض سجالترنامج سيتم عرض بيانات بعد تنفيذ الب -

) . 42 – 3( ، وآما موضح ذلك بالشكل رقم 5الرقم فيها أآبر من العدد

فقط مع بعض السجالت عرض بيانات حقلي الرقم واألسم) : 42 – 3( شكل رقم

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Data1.DatabaseName = App.Path + "\students.mdb"

Data1.RecordSource = "select * from information" _

& " where [marage]=0 "

End Sub

فقط ينطبق عليها الشرط ، سجالتجميع الحقول مع بيانات أربعة بعد تنفيذ البرنامج سيتم عرض -

) . 43 – 3( وآما موضح ذلك بالشكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٦

Page 69: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Data1.DatabaseName = App.Path + "\students.mdb"

Data1.RecordSource = "select * from information " _

& " order by name desc"

End Sub

، وآما موضح ذلك بعد تنفيذ البرنامج سيتم عرض جميع الحقول والسجالت مع ترتيبها تنازليا -

) . 44 – 3( بالشكل رقم

مع بعض سجالتها عرض جميع حقول القاعدة ) : 43 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٧

Page 70: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

الشرطية SQLترتيب بيانات القاعدة تنازليا بأستخدام عبارة : ) 44 – 3( شكل رقم

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Data1.DatabaseName = App.Path + "\students.mdb"

Data1.RecordSource = "select * from information" _

& " where [name] ='ali'"

End Sub

SQLوذلك من خالل عبارة امج سيتم عرض جميع الحقول ولكن لسجل واحد فقط بعد تنفيذ البرن -

) . 45 – 3( ، وآما موضح ذلك بالشكل رقم الشرطية

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٨

Page 71: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Data1.DatabaseName = App.Path + "\students.mdb"

Data1.RecordSource = "select * from information " _

& " where [name] like 's*' and " _

& " [number]<=5"

End Sub

الشرطية SQLبعد تنفيذ البرنامج سيتم عرض جميع الحقول ولسجلين فقط وذلك من خالل عبارة -

) . 46 – 3( رقم ، وآما موضح ذلك بالشكل

ع جميع حقول القاعدةمواحد عرض سجل) : 45 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٦٩

Page 72: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Private Sub Form_Load()

On Error Resume Next

Data1.Recordset.MoveLast

Data1.Recordset.MoveFirst

Data1.DatabaseName = App.Path + "\studentsmdb"

Data1.RecordSource = "select * from information " _

& " where mid$(name,2,1)='o'"

End Sub

الشرطية SQLبعد تنفيذ البرنامج سيتم عرض جميع الحقول ولسجلين فقط وذلك من خالل عبارة -

) . 47 – 3( ، وآما موضح ذلك بالشكل رقم

ين فقط عرض جميع حقول القاعدة مع سجل) : 46 – 3( شكل رقم

عرض جميع حقول القاعدة مع سجلين فقط أعتمادا على حقل األسم) : 47 – 3( شكل رقم

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٧٠

Page 73: Introduction ﺔﻣﺪﻘﻤﻟا 1 – 2 year...Introduction: ﺔﻣﺪﻘﻤﻟا 1 – 2 تﺎﻣﻮﻠﻌﻤﻟا ﻢﻴﻈﻨﺘﻟ تﺎﻧﺎﻴﺒﻟا ﺪﻋاﻮﻗ ﻢﻈﻧ

Project References Microsoft DAO 3.51 Object Library

Ex \ Implement the following code :

1. Data1.RecordSource = "select * from information " _

& " order by name asc"

2. Data1.RecordSource = "select * from information " _

& " where [name] like '*i'"

3. Data1.RecordSource = "select * from information " _

& " where [name] like '*e?'"

4.

Private Sub cmddisplay_Click()

Dim DB As Database

Dim RS As Recordset

Set DB = DBEngine.OpenDatabase(App.Path + "\students.mdb")

Set RS = DB.OpenRecordset("select mid$(name,1,2),name

from information", dbOpenDynaset)

RS.MoveFirst

Do Until RS.EOF = True

MsgBox " Hello " & RS.Fields(1) & " - " & RS.Fields(0), , " Welcome "

RS.MoveNext

Loop

RS.Close

End Sub

وذلك للحصول على آل التالية مكتبة البرمجةفي البرنامج األخير سنحتاج الى تحميل : مالحظة

: األمكانيات المطلوبة والتي تساعدنا في التعامل مع قواعد البيانات

فرع هندسة تكرير النفط والغازالمحاضرة العاشرة

البرمجة بلغة فيجوال بيسكقواعد البيانات

قسم الهندسة الكيمياويةالمرحلة األولى

١٧١