المتابعون للمدونة

الثلاثاء، 23 مايو 2017

Data Adapter Configuration Wizard

 المعالج السحري لإعداد موصّل البيانات
Data Adapter Configuration Wizard
 
يستخدم هذا المعالج لتسهيل ضبط وظيفة وخصائص موصل البيانات.. ويمكنك تشغيله باتباع أي مما يلي:
- النقر مرتين على أيقونة موصل البيانات SqlDataAdapter في صندوق الأدوات ToolBox.
- سحب أيقونة موصل البيانات من صندوق الأدوات وإلقائها على النموذجـ حيث ستضاف إلى صينية مكونات النموذج Component Tray.
- ضغط موصّل البيانات في صينية مكونات النموذج بزرّ الفأرة الأيمن، ومن القائمة الموضعيّة ضغط الأمر Configure Data Adapter.
ويبدأ هذا المعالج بنافذة تطلب منك اختيار قاعدة البيانات التي تريد الاتصال بها:


 
في هذه النافذة، يمكنك استخدام القائمة المنسدلة لاختيار اسم إحدى قواعد بيانات سيكويل سيرفر التي أضفت اتصالا بها من قبل في متصفح الخوادم Server Explorer.
ولو أردت إنشاء اتصال جديد بقاعدة بيانات أخرى، فاضغط الزرّ New Connection لتظهر لك نافذة إضافة اتصال Add Connection التي تعرفنا عليها من قبل في متصفح الخوادم.
ولو ضغطت العلامة + المجاورة للجملة Connection String في الجزء السفلي من النافذة، فسيتم عرض مربع نص قابل للقراءة فقط، به نص الاتصال بقاعدة البيانات التي اخترتها.. ويمكنك نسخ هذا النص لاستخدامه في أي موضع آخر في البرنامج لو أردت.
جرب على سبيل المثال اختيار قاعدة بيانات الكتب Books.mdf، واضغط الزر Next.

في النافذة التالية يمكنك اختيار نوع الاستعلام الذي ستستخدمه لإحضار البيانات من قاعدة البيانات:
 
هذه النافذة تتيح لك اختيار واحد مما يلي:
* استخدام جمل SQL (Use SQL Statements).
* إنشاء إجراءات مخزّنة جديدة (Create New Stored Procedures).
* استخدام إجراءات مخزّنة موجود سابقا في قاعدة البيانات (Use Existing Stored Procedures).
ويحدد اختيارك، النافذة التالية التي ستظهر عندما تضغط الزر Next، وذلك كالتالي:
- إذا اخترت استخدام جملة SQL أو إنشاء إجراء مخزن جديد، فستظهر لك النافذة التالية:
 
 

هذه النافذة تقدم لك مربع نص تستطيع أن تضيف فيه يدويا أو باللصق، نص جملة الاستعلام أو جملة إنشاء الإجراء المخزن الجديد.
ويمكنك ضغط الزرّ Query Builder لاستخدام باني الاستعلام في إنشاء جملة SQL، وعند إغلاق باني الاستعلام ستجد هذه الجملة مضافة إلى مربع النص.. لاحظ أن هذا الزر موجود أيضا في حالة إنشاء إجراء مخزن جديد، لأنك قد تحتاج إلى إضافة جملة استعلام داخل الإجراء المخزن، لهذا من الأسهل أن تنشئ هذه الجملة بباني الاستعلام، ثم تضيف إلى مربع النص بعد هذا صيغة الإجراء المخزن الذي يحتويها.. وإن كنت أنصحك بعدم إنشاء الإجراءات المخزنة بهذه الطريقة، لأن إنشاء الإجراء المخزن باستخدام متصفح الخوادم Sever Explorer أسهل وأفضل تنسيقا، ويتيح لك ايضا استخدام باني الاستعلام، مع مراجعة صياغة جمل الإجراء المخزن، واختبار نتائجه.
 
ملحوظة:
لا يسمح المعالج السحري بكتابة أكثر من جملة SQL مفصولة بالعلامة ; جرب مثلا استخدام الجملة التالية لملء مجموعة البيانات بجدولي المؤلفين والكتب كاملين:
SELECT * FROM Authors;
SELECT * FROM Books
لو ضغطت الزر Next فستظهر نافذة تخبرك بوجود خطأ في جملة الاستعلام، وسترفض مواصلة الخطوات ما لم تصحح هذا الخطأ.
لكن لو كنت مصرا على وضع أكثر من جملة استعلام في موصل البيانات، ليقوم بملء مجموعة البيانات بأكثر من جدول، فاتبع الخطوات التالية:
- حدد موصل البيانات في صينية مكونات النموذج، واضغط F4 لعرض نافذة الخصائص.
- حدد الخاصية SelectCommand في نافذة الخصائص، واضغط العلامة + المجاورة لها لإسدال خصائص كائن الأمر.
- حدد الخاصية CommandText، واكتب في قيمتها جملة الاستعلام المكونة من أكثر من أمر.
- اضغط زر الحفظ أو انتقل إلى أي خاصية أخرى أو إلى النموذج.. ستظهر رسالة تسألك إن كنت تريد تحديث معاملات هذا الامر.. اضغط زر الموافقة.
الآن سيكون كل شيء على ما يرام، وسيملأ موصل البيانات مجموعة البيانات بجدولي المؤلفين والكتب!
الطريف أنك لو أعدت فتح المعالج السحري فستجد جملة الاستعلام المركبة من أكثر من أمر معروضة في مربع النص، ولكنك ستظل تحصل على خطأ لو حاولت الانتقال إلى الخطوة التالية!
 
وتحتوي هذه النافذة أيضا على الزرّ "خيارات متقدّمة" Advanced Options، ولو ضغطته فستظهر لك نافذة بها الخيارات التالية:

 
1.  Generate Insert, Update And Delete Statements:
استخدم هذا الخيار إذا كان برنامجك سيجري تعديلات في السجلات التي يُحمّلها من قاعدة البيانات.. في هذه الحالة سيتمّ إنتاج جمل التحديث والإدراج والحذف آليا، بالاعتماد على أسماء الجداول والأعمدة الموجودة في الجملة Select التي أنشأتها.
2.  استخدم التطابق المتفائل Use Optimistic Concurrency:
هذا الخيار يتيح لك استخدام التطابق المتفائل عند تحديث البيانات.. لاحظ أن إزالة علامة الاختيار تعني أنك تريد استخدام التطابق المتشائم.. هذا يؤثر فقط على صيغة جملة التحديث UpdateCommand، لكنه لن يكتب لك الكود المناسب لإغلاق Lock سجلات قاعدة البيانات، وعليك أن تكتب هذا الكود بنفسك من خلال كائن التعاملات Transaction Object.
3. إنعاش مجموعة البيانات Refresh The DataSet:
هذا الخيار يضيف جملة تحديد SELECT بعد جملتي الإدراج والتحديث، لاستخدامها في إنعاش مجموعة البيانات بعد تنفيذ أوامر الإدراج والتحديث، كما شرحنا سابقا.. لاحظ أن هذا الخيار غير متاح في قواعد بيانات Access، لأنها لا تسمح أصلا بتنفيذ أكثر من استعلام في المرة الواحدة.
 
 
-  أما لو اخترت استخدام إجراءات مخزنة موجودة سابقا في قاعدة البيانات، فستظهر لك النافذة التالية:
 
 


هذه النافذة بها أربع قوائم منسدلة، تعرض كل منها أسماء الإجراءات المخزنة الموجودة في قاعدة البيانات، لتختار منها إجراءات التحديد Select والإدراج Insert والتحديث Update والحذف Delete.
ويوجد على يمين النافذة جدول يعرض بعض التفاصيل الخاصة بالإجراء المخزن.. فبالنسبة للإجراء الخاص بالتحديد، يعرض الجدول أسماء الأعمدة التي يعيد الإجراء المخزن محتوياتها (على سبيل المثال: الإجراء GetAuthorBooks يعيد العمود Book، الذي يحتوي على أسماء الكتب الخاصة بالمؤلف المطلوب).
أما بالنسبة لإجراءات الإدراج والتحديث والحذف، فيعرض هذا الجدول عمودين، أولهما يحتوي على المعاملات المعرفة في الإجراء المخزن، والثاني يحتوي على أسماء حقول مجموعة البيانات DataSet، التي سيتم ملء هذه المعاملات من قيمها لإرسالها إلى الإجراء المخزن.. وتحتوي كل خانة في هذا العمود على قائمة منسدلة يمكنك اختيار اسم الحقل منها.
 
وبعد الانتهاء من أي من النافذتين السابقتين، سيؤدي ضغط الزر Next إلى ظهور نافذة تعرض ملخّصا لخياراتك.. اضغط الزر Finish لإنهاء المعالج السحري وتنفيذ هذه الاختيارات، أو اضغط Cancel لإلغاء العملية.
لاحظ أنك تستطيع في كل نافذة من نوافذ هذا المعالج، الرجوع إلى النافذة السابقة بضغط الزر Previous.
بعد انتهاء المعالج ستجد أن خصائص موصل البيانات قد تم ضبطها لتوافق اختياراتك، كما ستجد كائن اتصال SqlConnection اسمه الافتراضي SqlConnection1 قد أضيف إلى صينية مكونات النموذج، ليستخدمه موصل البيانات في الاتصال بقاعدة البيانات.
 
من كتاب: من الصفر إلى الاحتراف برمجة قواعد البيانات في فيجوال بيزيك دوت نت ADO .NET.. للتنزيل:

ليست هناك تعليقات:

إرسال تعليق

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.

صفحة الشاعر