اتصال قاعدة بيانات C#: كيفية الاتصال بـ SQL Server (مثال)
يمكنه العمل مع أنواع مختلفة من قواعد البيانات. يمكنه العمل مع قواعد البيانات الأكثر شيوعًا مثل Oracle و Microsoft SQL الخادم.
كما يمكنه العمل مع أشكال جديدة من قواعد البيانات مثل MongoDB و MySQL.
أساسيات الاتصال بقاعدة البيانات
يمكن لـ C# و.Net العمل مع غالبية قواعد البيانات، والأكثر شيوعًا هو Oracle و.Net Microsoft خادم قاعدة البيانات. ولكن مع كل قاعدة بيانات، يكون المنطق الكامن وراء العمل معها جميعًا هو نفسه في الغالب.
في الأمثلة لدينا، سوف ننظر في العمل Microsoft SQL Server كقاعدة بيانات لدينا. لأغراض التعلم، يمكن للمرء تنزيل واستخدام Microsoft إصدار SQL Server Express، وهو برنامج قاعدة بيانات مجاني يقدمه Microsoft.
في العمل مع قواعد البيانات، اتبع الخطواتwing هي المفاهيم المشتركة بين جميع قواعد البيانات.
- الاتصال - للعمل مع البيانات الموجودة في قاعدة البيانات، الخطوة الأولى الواضحة هي الاتصال. يتكون الاتصال بقاعدة البيانات عادةً من المعلمات المذكورة أدناه.
- اسم قاعدة البيانات أو مصدر البيانات - المعلمة المهمة الأولى هي اسم قاعدة البيانات التي يجب إنشاء الاتصال بها. يمكن أن يعمل كل اتصال مع قاعدة بيانات واحدة فقط في كل مرة.
- أوراق اعتماد - الجانب المهم التالي هو اسم المستخدم وكلمة المرور اللذين يجب استخدامهما لتأسيس اتصال بقاعدة البيانات. فهو يضمن أن اسم المستخدم وكلمة المرور لهما الامتيازات اللازمة للاتصال بقاعدة البيانات.
- معلمات اختيارية – لكل نوع من أنواع قاعدة البيانات، يمكنك تحديد معلمات اختيارية لتوفير المزيد من المعلومات حول كيفية تعامل .net مع الاتصال بقاعدة البيانات. على سبيل المثال، يمكن تحديد معلمة للمدة التي يجب أن يظل فيها الاتصال نشطًا. إذا لم يتم تنفيذ أي عملية لفترة زمنية محددة، فستحدد المعلمة ما إذا كان يجب إغلاق الاتصال.
- اختيار البيانات من قاعدة البيانات - بمجرد إنشاء الاتصال، الجانب المهم التالي هو جلب البيانات من قاعدة البيانات. يمكن لـ C# تنفيذ أمر تحديد "SQL" على قاعدة البيانات. يمكن استخدام عبارة "SQL" لجلب البيانات من جدول محدد في قاعدة البيانات.
- إدخال البيانات في قاعدة البيانات – يمكن أيضًا استخدام لغة C# لإدراج السجلات في قاعدة البيانات. يمكن تحديد القيم في لغة C# لكل صف يحتاج إلى إدراجه في قاعدة البيانات.
- تحديث البيانات في قاعدة البيانات – يمكن أيضًا استخدام لغة C# لتحديث السجلات الموجودة في قاعدة البيانات. يمكن تحديد قيم جديدة في لغة C# لكل صف يحتاج إلى التحديث في قاعدة البيانات.
- حذف البيانات من قاعدة البيانات – يمكن أيضًا استخدام C# لحذف السجلات في قاعدة البيانات. يمكن تحديد الأوامر لتحديد الصفوف التي يجب حذفها في C#.
حسنًا، الآن بعد أن رأينا نظرية كل عملية، دعنا ننتقل إلى الأقسام الإضافية لننظر إلى كيفية إجراء عمليات قاعدة البيانات في C#.
أمر SQL في لغة C#
SqlCommand في C# السماح للمستخدم بالاستعلام وإرسال الأوامر إلى قاعدة البيانات. يتم تحديد أمر SQL بواسطة كائن اتصال SQL. يتم استخدام طريقتين، طريقة ExecuteReader لنتائج الاستعلام وExecuteNonQuery لأوامر الإدراج والتحديث والحذف. إنها الطريقة الأفضل للأوامر المختلفة.
كيفية ربط C# بقاعدة البيانات
دعونا الآن نلقي نظرة على الكود الذي يجب الاحتفاظ به في مكانه لإنشاء اتصال بقاعدة البيانات. في مثالنا، سوف نقوم بالاتصال بقاعدة بيانات تحمل اسم Demodb. بيانات الاعتماد المستخدمة للاتصال بقاعدة البيانات مذكورة أدناه
- اسم المستخدم – سا
- كلمة المرور – العرض التوضيحي 123
سوف نرى بسيطة تطبيق نماذج ويندوز للعمل مع قواعد البيانات. سيكون لدينا زر بسيط يسمى "الاتصال" والذي سيتم استخدامه للاتصال بقاعدة البيانات.
لذلك دعونا نتبع الخطوات التالية لتحقيق ذلك
الخطوة 1) تتضمن الخطوة الأولى إنشاء مشروع جديد في Visual Studio. بعد تشغيل Visual Studio، تحتاج إلى اختيار خيار القائمة New->Project.
الخطوة 2) الخطوة التالية هي اختيار نوع المشروع كتطبيق Windows Forms. وهنا، نحتاج أيضًا إلى ذكر اسم مشروعنا وموقعه.
- في مربع حوار المشروع boxيمكننا أن نرى خيارات متنوعة لإنشاء أنواع مختلفة من المشاريع في Visual Studio. انقر فوق خيار Windows الموجود على الجانب الأيسر.
- عندما نضغط على خيارات Windows في الخطوة السابقة، سنكون قادرين على رؤية خيار لتطبيق Windows Forms. انقر فوق هذا الخيار.
- ثم نعطي اسمًا للتطبيق وهو في حالتنا "DemoApplication". نحتاج أيضًا إلى توفير موقع لتخزين تطبيقنا.
- أخيرًا، نضغط على الزر "موافق" للسماح لـ Visual Studio بإنشاء مشروعنا.
الخطوة 3) أضف الآن زرًا من الأداةbox إلى نموذج ويندوز. ضع خاصية النص الخاصة بالزر على أنها اتصال. هذه هي الطريقة التي سوف تبدو وكأنها
الخطوة 4) الآن انقر نقرًا مزدوجًا فوق النموذج حتى تتم إضافة معالج الحدث إلى الكود الخاص بحدث النقر على الزر. في معالج الحدث، أضف الكود أدناه.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace DemoApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string connetionString;
SqlConnection cnn;
connetionString = @"Data Source=WIN-50GP30FGO75;Initial Catalog=Demodb;User ID=sa;Password=demol23";
cnn = new SqlConnection(connetionString);
cnn.Open();
MessageBox.Show("Connection Open !");
cnn.Close();
}
}
}
شرح الكود :-
- الخطوة الأولى هي إنشاء المتغيرات التي سيتم استخدامها لإنشاء سلسلة الاتصال والاتصال بقاعدة بيانات SQL Server.
- الخطوة التالية هي إنشاء سلسلة الاتصال. يجب تحديد سلسلة الاتصال بشكل صحيح حتى تتمكن C# من فهم سلسلة الاتصال. تتكون سلسلة الاتصال من المتابعةwing أجزاء
- مصدر البيانات – هذا هو اسم الخادم الذي توجد عليه قاعدة البيانات. في حالتنا، فهو موجود على جهاز يسمى WIN-50GP30FGO75.
- يتم استخدام الكتالوج الأولي لتحديد اسم قاعدة البيانات
- معرف المستخدم وكلمة المرور هما بيانات الاعتماد المطلوبة للاتصال بقاعدة البيانات.
- بعد ذلك، نقوم بتعيين سلسلة الاتصال للمتغير cnn. يتم استخدام المتغير cnn وهو من النوع SqlConnection لتأسيس الاتصال بقاعدة البيانات.
- بعد ذلك، نستخدم الأسلوب Open للمتغير cnn لفتح اتصال بقاعدة البيانات. نقوم بعد ذلك بعرض رسالة للمستخدم تفيد بأنه تم إنشاء الاتصال.
- وبمجرد الانتهاء من العملية بنجاح، نقوم بعد ذلك بإغلاق الاتصال بقاعدة البيانات. من الممارسات الجيدة دائمًا إغلاق الاتصال بقاعدة البيانات إذا لم يكن هناك أي شيء آخر مطلوب القيام به في قاعدة البيانات.
عندما يتم تعيين الكود أعلاه، ويتم تنفيذ المشروع باستخدام Visual Studio، سوف تحصل على الإخراج أدناه. بمجرد عرض النموذج، انقر فوق الزر "اتصال".
انتاج:-
عند النقر على زر "الاتصال"، من الإخراج، يمكنك أن ترى أنه تم إنشاء اتصال قاعدة البيانات. ومن هنا الرسالة box تم عرضه.
الوصول إلى البيانات باستخدام SqlDataReader
لعرض كيفية الوصول إلى البيانات باستخدام C#، لنفترض أن لدينا ما يليwing التحف في قاعدة بياناتنا.
- جدول يسمى ديموتب. سيتم استخدام هذا الجدول لتخزين معرف وأسماء البرامج التعليمية المختلفة.
- سيحتوي الجدول على عمودين، أحدهما يسمى "TutorialID" والآخر يسمى "TutorialName".
- في الوقت الحالي، سيحتوي الجدول على صفين كما هو موضح أدناه.
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 1 | C# |
| 2 | ASP.Net |
لنغير الكود الموجود في النموذج الخاص بنا، حتى نتمكن من الاستعلام عن هذه البيانات وعرض المعلومات عبر رسالةbox. لاحظ أن كل التعليمات البرمجية التي تم إدخالها أدناه هي استمرار للتعليمات البرمجية المكتوبة لاتصال البيانات في القسم السابق.
الخطوة 1) دعنا نقسم الكود إلى جزأين بحيث يكون من السهل على المستخدم فهمه.
- الأول سيكون إنشاء عبارة "select" الخاصة بنا، والتي سيتم استخدامها لقراءة البيانات من قاعدة البيانات.
- سنقوم بعد ذلك بتنفيذ عبارة "select" على قاعدة البيانات وجلب جميع صفوف الجدول وفقًا لذلك.
شرح الكود :-
- الخطوة الأولى هي إنشاء فولوwing المتغيرات
- SQLCommand - "SQLCommand" هي فئة محددة في C#. يتم استخدام هذا الفصل لإجراء عمليات القراءة والكتابة في قاعدة البيانات. ومن ثم، فإن الخطوة الأولى هي التأكد من أننا قمنا بإنشاء نوع متغير من هذه الفئة. سيتم بعد ذلك استخدام هذا المتغير في الخطوات اللاحقة لقراءة البيانات من قاعدة البيانات الخاصة بنا.
- يتم استخدام كائن DataReader للحصول على كافة البيانات المحددة بواسطة استعلام SQL. يمكننا بعد ذلك قراءة جميع صفوف الجدول واحدًا تلو الآخر باستخدام قارئ البيانات.
- نقوم بعد ذلك بتحديد متغيرين من السلسلة، أحدهما هو "SQL" للاحتفاظ بسلسلة أوامر SQL الخاصة بنا. التالي هو "الإخراج" الذي سيحتوي على جميع قيم الجدول.
- الخطوة التالية هي تحديد عبارة SQL، والتي سيتم استخدامها ضد قاعدة البيانات الخاصة بنا. في حالتنا، هو "اختر معرف البرنامج التعليمي، اسم البرنامج التعليمي من ديموتب". سيؤدي هذا إلى جلب كافة الصفوف من الجدول demotb.
- بعد ذلك، نقوم بإنشاء كائن الأمر الذي يتم استخدامه لتنفيذ عبارة SQL على قاعدة البيانات. في أمر SQL، يجب عليك تمرير كائن الاتصال وسلسلة SQL.
- بعد ذلك، سنقوم بتنفيذ أمر قارئ البيانات، والذي سيجلب جميع الصفوف من جدول ديموتب.
- الآن بعد أن أصبح لدينا جميع صفوف الجدول، نحتاج إلى آلية للوصول إلى الصف واحدًا تلو الآخر. لهذا، سوف نستخدم العبارة while. سيتم استخدام عبارة while للوصول إلى الصفوف من قارئ البيانات واحدًا تلو الآخر. نستخدم بعد ذلك طريقة GetValue للحصول على قيمة TutorialID وTutorialName.
الخطوة 2) في الخطوة الأخيرة، سنعرض المخرجات للمستخدم ونغلق جميع الكائنات المتعلقة بعملية قاعدة البيانات.
شرح الكود :-
- سنواصل الكود الخاص بنا من خلال عرض قيمة متغير الإخراج باستخدام الرسالةBox. سيحتوي متغير الإخراج على كافة القيم من جدول ديموتب.
- لقد قمنا أخيرًا بإغلاق جميع الكائنات المتعلقة بتشغيل قاعدة البيانات الخاصة بنا. تذكر أن هذه دائمًا ممارسة جيدة.
عندما يتم تعيين التعليمات البرمجية أعلاه، ويتم تشغيل المشروع باستخدام Visual Studio، سوف تحصل على الإخراج أدناه. بمجرد عرض النموذج، انقر فوق الزر "اتصال".
انتاج:-
من المخرجات، يمكنك أن ترى بوضوح أن البرنامج كان قادرًا على الحصول على القيم من قاعدة البيانات. ثم يتم عرض البيانات في الرسالة box.
C# أدخل في قاعدة البيانات
تمامًا مثل الوصول إلى البيانات، تتمتع لغة C# بالقدرة على إدراج السجلات في قاعدة البيانات أيضًا. لعرض كيفية إدراج السجلات في قاعدة بياناتنا، لنأخذ نفس بنية الجدول التي تم استخدامها أعلاه.
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 1 | C# |
| 2 | ASP.Net |
دعونا نغير الكود في النموذج الخاص بنا، حتى نتمكن من إدراج following صف في الجدول
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 3 | VB.Net |
لذلك دعونا نضيف المتابعةwing رمز لبرنامجنا. سيتم استخدام مقتطف الكود أدناه لإدراج سجل موجود في قاعدة البيانات الخاصة بنا.
شرح الكود :-
- الخطوة الأولى هي إنشاء فولوwing المتغيرات
- SQLCommand – يُستخدم نوع البيانات هذا لتعريف الكائنات المستخدمة لتنفيذ عمليات SQL على قاعدة البيانات. سيحتوي هذا الكائن على أمر SQL الذي سيتم تشغيله على قاعدة بيانات SQL Server الخاصة بنا.
- يتم استخدام كائن DataAdapter لتنفيذ عمليات SQL محددة مثل أوامر الإدراج والحذف والتحديث.
- نقوم بعد ذلك بتحديد متغير سلسلة، وهو "SQL" للاحتفاظ بسلسلة أوامر SQL الخاصة بنا.
- الخطوة التالية هي تحديد عبارة SQL التي سيتم استخدامها في قاعدة البيانات الخاصة بنا. في حالتنا، نقوم بإصدار بيان إدراج، والذي سيؤدي إلى إدراج سجل TutorialID=1 وTutorialName=VB.Net
- بعد ذلك، نقوم بإنشاء كائن الأمر الذي يتم استخدامه لتنفيذ عبارة SQL على قاعدة البيانات. في أمر SQL، يجب عليك تمرير كائن الاتصال وسلسلة SQL
- في أمر محول البيانات الخاص بنا، نقوم الآن بربط أمر إدراج SQL بالمحول الخاص بنا. نقوم أيضًا بإصدار طريقة ExecuteNonQuery التي تُستخدم لتنفيذ عبارة الإدراج في قاعدة البيانات الخاصة بنا. يتم استخدام الأسلوب "ExecuteNonQuery" في لغة C# لإصدار أي بيانات DML مقابل قاعدة البيانات. نعني بعبارات DML عملية الإدراج والحذف والتحديث. في لغة C#، إذا كنت تريد إصدار أي من هذه العبارات مقابل جدول، فستحتاج إلى استخدام الأسلوب ExecuteNonQuery.
- لقد قمنا أخيرًا بإغلاق جميع الكائنات المتعلقة بتشغيل قاعدة البيانات الخاصة بنا. تذكر أن هذه دائمًا ممارسة جيدة.
عندما يتم تعيين الكود أعلاه، ويتم تنفيذ المشروع باستخدام Visual Studio، سوف تحصل على الإخراج أدناه. بمجرد عرض النموذج، انقر فوق الزر "اتصال".
انتاج:-
إذا ذهبت إلى SQL Server Express وشاهدت الصفوف الموجودة في جدول ديموتب، فسترى الصف مدرجًا كما هو موضح أدناه
تحديث قاعدة بيانات C#
تمامًا مثل الوصول إلى البيانات، تتمتع لغة C# بالقدرة على تحديث السجلات الموجودة من قاعدة البيانات أيضًا. لعرض كيفية تحديث السجلات في قاعدة بياناتنا، لنأخذ نفس بنية الجدول التي تم استخدامها أعلاه.
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 1 | C# |
| 2 | ASP.Net |
| 3 | VB.Net |
دعونا نغير الكود الموجود في النموذج الخاص بنا، حتى نتمكن من تحديث المسارwing صف. قيمة الصف القديم هي TutorialID كـ "3" واسم البرنامج التعليمي كـ "VB.Net". وسنقوم بتحديثه إلى "VB.Net مكتمل" بينما ستظل قيمة الصف لمعرف البرنامج التعليمي كما هي.
الصف القديم
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 3 | VB.Net |
صف جديد
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 3 | VB.Net مكتمل |
لذلك دعونا نضيف المتابعةwing رمز لبرنامجنا. سيتم استخدام مقتطف الكود أدناه لتحديث سجل موجود في قاعدة بياناتنا.
مثال C# SqlCommand مع شرح الكود: -
- الخطوة الأولى هي إنشاء فولوwing المتغيرات
- SQLCommand – يُستخدم نوع البيانات هذا لتعريف الكائنات المستخدمة لتنفيذ عمليات SQL على قاعدة البيانات. سيحتوي هذا الكائن على أمر SQL الذي سيتم تشغيله على قاعدة بيانات SQL Server الخاصة بنا.
- يتم استخدام كائن dataadapter لتنفيذ عمليات SQL محددة مثل أوامر الإدراج والحذف والتحديث.
- ثم نقوم بتحديد متغير سلسلة، وهو SQL للاحتفاظ بسلسلة أوامر SQL الخاصة بنا.
- الخطوة التالية هي تحديد عبارة SQL التي سيتم استخدامها في قاعدة البيانات الخاصة بنا. في حالتنا، نقوم بإصدار بيان تحديث، سيؤدي هذا إلى تحديث اسم البرنامج التعليمي إلى "VB.Net Complete" بينما يظل معرف البرنامج التعليمي دون تغيير ويتم الاحتفاظ به كـ 3.
- بعد ذلك، سنقوم بإنشاء كائن الأمر، والذي سيتم استخدامه لتنفيذ عبارة SQL على قاعدة البيانات. في أمر SQL، قمت بتمرير كائن الاتصال وسلسلة SQL.
- في أمر محول البيانات الخاص بنا، نقوم الآن بربط أمر إدراج SQL بالمحول الخاص بنا. نقوم أيضًا بعد ذلك بإصدار طريقة ExecuteNonQuery التي تُستخدم لتنفيذ بيان التحديث على قاعدة البيانات الخاصة بنا.
- لقد قمنا أخيرًا بإغلاق جميع الكائنات المتعلقة بتشغيل قاعدة البيانات الخاصة بنا. تذكر أن هذه دائمًا ممارسة جيدة.
عندما يتم تعيين الكود أعلاه، ويتم تنفيذ المشروع باستخدام Visual Studio، سوف تحصل على الإخراج أدناه. بمجرد عرض النموذج، انقر فوق الزر "اتصال".
انتاج:-
إذا ذهبت بالفعل إلى SQL Server Express وشاهدت الصفوف الموجودة في جدول ديموتب، فسترى أنه تم تحديث الصف بنجاح كما هو موضح أدناه.
حذف السجلات
تمامًا مثل الوصول إلى البيانات، تتمتع لغة C# بالقدرة على حذف السجلات الموجودة من قاعدة البيانات أيضًا. لعرض كيفية حذف السجلات في قاعدة بياناتنا، لنأخذ نفس بنية الجدول التي تم استخدامها أعلاه.
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 1 | C# |
| 2 | ASP.Net |
| 3 | VB.Net مكتمل |
دعونا نغير الكود الموجود في النموذج الخاص بنا، حتى نتمكن من حذف المتابعةwing صف
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 3 | VB.Net مكتمل |
لذلك دعونا نضيف المتابعةwing رمز لبرنامجنا. سيتم استخدام مقتطف الكود أدناه لحذف سجل موجود في قاعدة بياناتنا.
شرح الكود :-
- الفرق الرئيسي في هذا الكود هو أننا نقوم الآن بإصدار عبارة حذف SQL. يتم استخدام عبارة الحذف لحذف الصف الموجود في جدول demotb الذي يحتوي فيه TutorialID على قيمة 3.
- في أمر محول البيانات الخاص بنا، نقوم الآن بربط أمر إدراج SQL بالمحول الخاص بنا. نقوم أيضًا بعد ذلك بإصدار طريقة ExecuteNonQuery التي تُستخدم لتنفيذ عبارة الحذف في قاعدة البيانات الخاصة بنا.
عندما يتم تعيين الكود أعلاه، ويتم تنفيذ المشروع باستخدام Visual Studio، سوف تحصل على الإخراج أدناه. بمجرد عرض النموذج، انقر فوق الزر "اتصال".
انتاج:-
إذا ذهبت بالفعل إلى SQL Server Express وشاهدت الصفوف الموجودة في جدول ديموتب، فسترى أنه تم حذف الصف بنجاح كما هو موضح أدناه.
ربط عناصر التحكم بالبيانات
في الأقسام السابقة، رأينا كيف يمكننا استخدام أوامر C# مثل SQLCommand وSQLReader لجلب البيانات من قاعدة البيانات. ورأينا أيضًا كيف نقرأ كل صف من الجدول ونستخدم رسالةbox لعرض محتويات الجدول للمستخدم.
ولكن من الواضح أن المستخدمين لا يريدون رؤية البيانات المرسلة عبر الرسائل boxes وسوف تريد ضوابط أفضل لعرض البيانات. لنأخذ بنية البيانات أدناه في جدول
| معرف البرنامج التعليمي | اسم البرنامج التعليمي |
|---|---|
| 1 | C# |
| 2 | ASP.Net |
| 3 | VB.Net مكتمل |
من بنية البيانات المذكورة أعلاه، قد يرغب المستخدم بشكل مثالي في رؤية معرف البرنامج التعليمي واسم البرنامج التعليمي معروضين في النصbox. ثانيًا، قد يرغبون في الحصول على نوع من التحكم بالزر الذي قد يسمح لهم بالانتقال إلى السجل التالي أو إلى السجل السابق في الجدول. قد يتطلب هذا القليل من الترميز الإضافي من جانب المطور.
والخبر السار هو أن لغة C# يمكنها تقليل جهد البرمجة الإضافي بواسطة allowing ربط الضوابط بالبيانات. ما يعنيه هذا هو أن لغة C# يمكنها ملء قيمة النص تلقائيًاbox وفقا لحقل معين من الجدول.
لذلك، يمكن أن يكون لديك نصينboxعلى شكل ويندوز. يمكنك بعد ذلك ربط نص واحد box إلى الحقل TutorialID ونص آخرbox إلى حقل اسم البرنامج التعليمي. يتم إجراء هذا الارتباط في مصمم Visual Studio نفسه، ولا تحتاج إلى كتابة تعليمات برمجية إضافية لهذا الغرض.
سيتأكد Visual Studio من أنه يكتب لك التعليمات البرمجية لضمان عمل الارتباط. ثم عند تشغيل التطبيق الخاص بك، النصbox ستتصل عناصر التحكم تلقائيًا بقاعدة البيانات، وستجلب البيانات وتعرضها في النصbox ضوابط. لا يلزم وجود أي ترميز من جانب المطور لتحقيق ذلك.
دعونا نلقي نظرة على مثال رمزي لكيفية تحقيق ربط عناصر التحكم.
في مثالنا، سنقوم بإنشاء نصينboxes على شكل النوافذ. سيمثلون معرف البرنامج التعليمي واسم البرنامج التعليمي على التوالي. سيتم ربطهم بمعرف البرنامج التعليمي وحقل TutorialName لقاعدة البيانات وفقًا لذلك.
دعونا نتبع الخطوات المذكورة أدناه لتحقيق ذلك.
الخطوة 1) بناء النموذج الأساسي. في النموذج، قم بسحب وإسقاط مكونين - التسميات والنصboxوفاق. ثم نفذ فولوwing خطوات فرعية
- ضع القيمة النصية للتسمية الأولى كمعرف TutorialID
- ضع القيمة النصية للتسمية الثانية باسم TutorialName
- ضع خاصية الاسم للنص الأولbox كما txtID
- ضع خاصية الاسم للنص الثانيbox باسم txtName
فيما يلي الشكل الذي سيبدو عليه النموذج بمجرد تنفيذ الخطوات المذكورة أعلاه.
الخطوة 2) الخطوة التالية هي إضافة متصفح ربط إلى النموذج. يمكن لعنصر تحكم Navigator الملزم التنقل تلقائيًا عبر كل صف من الجدول. لإضافة متصفح الربط، ما عليك سوى الانتقال إلى الأداةbox واسحبه إلى النموذج.
الخطوة 3) الخطوة التالية هي إضافة رابط إلى قاعدة البيانات الخاصة بنا. يمكن القيام بذلك عن طريق الذهاب إلى أي من النصbox التحكم والنقر على DataBindings->خاصية النص. يتم استخدام Binding Navigator لإنشاء رابط من التطبيق الخاص بك إلى قاعدة البيانات.
عند تنفيذ هذه الخطوة، سيقوم Visual Studio تلقائيًا بإضافة التعليمات البرمجية المطلوبة إلى التطبيق للتأكد من أن التطبيق مرتبط بقاعدة البيانات. عادةً ما تتم الإشارة إلى قاعدة البيانات في Visual Studio كمصدر بيانات المشروع. لذا، لضمان إنشاء الاتصال بين التطبيق وقاعدة البيانات، فإن الخطوة الأولى هي إنشاء مصدر بيانات المشروع.
التاليwing سوف تظهر الشاشة. انقر على الرابط- "إضافة مصدر بيانات المشروع". عندما تنقر على مصدر بيانات المشروع، سيظهر لك معالج؛ سيسمح لك هذا بتحديد اتصال قاعدة البيانات.
الخطوة 4) بمجرد النقر فوق الارتباط إضافة مصدر بيانات المشروع، سيتم تقديمك مع المعالج الذي سيتم استخدامه لإنشاء اتصال بقاعدة بيانات ديموتب. المتابعةwing توضح الخطوات بالتفصيل ما يجب تكوينه أثناء كل خطوة من خطوات المعالج.
- في الشاشة المنبثقة، اختر نوع مصدر البيانات كقاعدة بيانات ثم انقر فوق الزر التالي.
- في الشاشة التالية، تحتاج إلى البدء في إنشاء سلسلة الاتصال بقاعدة البيانات. سلسلة الاتصال مطلوبة للتطبيق لإنشاء اتصال بقاعدة البيانات. يحتوي على معلمات مثل اسم الخادم واسم قاعدة البيانات واسم برنامج التشغيل.
- انقر على زر اتصال جديد
- اختر مصدر البيانات ك Microsoft ملقم SQL
- انقر فوق الزر متابعة.
- بعد ذلك، تحتاج إلى إضافة بيانات الاعتماد للاتصال بقاعدة البيانات
- اختر اسم الخادم الذي يوجد عليه SQL Server
- أدخل معرف المستخدم وكلمة المرور للاتصال بقاعدة البيانات
- اختر قاعدة البيانات كـdemotb
- انقر فوق الزر "موافق".
- في هذه الشاشة سوف نقوم بتأكيد جميع الإعدادات التي تم حملها على الشاشات السابقة.
- اختر الخيار "نعم" لتضمين البيانات الحساسة في سلسلة الاتصال
- انقر على زر "التالي".
- في الشاشة التالية، انقر على زر "التالي" لتأكيد إنشاء سلسلة الاتصال
- في هذه الخطوة،
- اختر جداول ديموتب التي ستظهر في الشاشة التالية.
- سيصبح هذا الجدول الآن مصدر بيانات متاحًا في مشروع C#
عندما تنقر على زر إنهاء، البصرية ستوديو سيضمن الآن أن التطبيق يمكنه الاستعلام عن كافة الصفوف الموجودة في الجدول Demotb.
الخطوة 5) الآن بعد أن تم تعريف مصدر البيانات، نحتاج الآن إلى توصيل نص TutorialID وTutorialNamebox إلى طاولة ديموتب. عند النقر فوق خاصية النص الخاصة بنص TutorialID أو TutorialNameboxسترى الآن أن مصدر الربط لـ Demotb متاح.
بالنسبة للنص الأول box اختر معرف البرنامج التعليمي. كرر هذه الخطوة للنص الثانيbox واختر الحقل باسم TutorialName. توضح الخطوات أدناه كيف يمكننا الانتقال إلى كل عنصر تحكم وتغيير الارتباط وفقًا لذلك.
- انقر على عنصر التحكم معرف البرنامج التعليمي.
- في نافذة الخصائص، سترى خصائص نص TutorialIDbox. انتقل إلى خاصية النص وانقر على زر السهم لأسفل.
- عند النقر فوق زر السهم لأسفل، سترى خيار مصدر ديموتببيندينج. وتحت هذا، سترى خيارات TutorialName وTutorialID. اختر معرف البرنامج التعليمي واحد.
كرر الخطوات الثلاث المذكورة أعلاه لنص اسم البرنامج التعليمي box.
- لذا انقر على نص اسم البرنامج التعليمي box
- انتقل إلى نافذة الخصائص
- اختر خاصية النص
- اختر خيار TutorialName ضمن demotbBindingSource
الخطوة 6) بعد ذلك نحتاج إلى تغيير خاصية Binding Source الخاصة بـ BindingNavigator للإشارة إلى مصدر بيانات Demotb الخاص بنا. السبب وراء قيامنا بذلك هو أن Binding Navigator يحتاج أيضًا إلى معرفة الجدول الذي يجب الرجوع إليه.
يتم استخدام Binding Navigator لتحديد السجل التالي أو السابق في الجدول. لذلك على الرغم من إضافة مصدر البيانات إلى المشروع ككل وإلى النص box التحكم، ما زلنا بحاجة إلى التأكد من أن Binding Navigator لديه أيضًا رابط لمصدر البيانات الخاص بنا. للقيام بذلك، نحتاج إلى النقر فوق كائن Binding navigator، والانتقال إلى خاصية Binding Source واختيار الخيار المتاح
بعد ذلك، نحتاج إلى الانتقال إلى نافذة الخصائص حتى نتمكن من إجراء التغيير على خاصية Binding Source.
عند تنفيذ جميع الخطوات المذكورة أعلاه بنجاح، سوف تحصل على النتيجة المذكورة أدناه.
انتاج:-
الآن عندما يتم إطلاق المشروع، يمكنك أن ترى أن النصboxes يحصل تلقائيًا على القيم من الجدول.
عند النقر فوق الزر "التالي" في المتصفح، فإنه ينتقل تلقائيًا إلى السجل التالي في الجدول. وتأتي قيم السجل التالي تلقائيًا في النص boxes
سي # داتاغريدفيو
تُستخدم شبكات البيانات لعرض البيانات من جدول بتنسيق يشبه الشبكة. عندما يرى المستخدم بيانات الجدول، فإنه عادةً ما يفضل رؤية جميع صفوف الجدول في لقطة واحدة. يمكن تحقيق ذلك إذا تمكنا من عرض البيانات في شبكة في النموذج.
يحتوي C# وVisual Studio على شبكات بيانات مدمجة، ويمكن استخدامها لعرض البيانات. دعونا نلقي نظرة على مثال على ذلك. في مثالنا، سيكون لدينا شبكة بيانات، والتي سيتم استخدامها لعرض قيم معرف البرنامج التعليمي واسم البرنامج التعليمي من جدول ديموتب.
الخطوة 1) اسحب عنصر التحكم DataGridView من الأداةbox إلى النموذج في Visual Studio. يتم استخدام عنصر التحكم DataGridView في Visual Studio لعرض صفوف الجدول بتنسيق يشبه الشبكة.
الخطوة 2) في الخطوة التالية، نحتاج إلى ربط شبكة البيانات الخاصة بنا بقاعدة البيانات. في القسم الأخير، قمنا بإنشاء مصدر بيانات المشروع. دعونا نستخدم نفس مصدر البيانات في مثالنا.
- أولاً، عليك اختيار الشبكة والنقر على السهم الموجود في الشبكة. سيؤدي هذا إلى إظهار خيارات تكوين الشبكة.
- في خيارات التكوين، ما عليك سوى اختيار مصدر البيانات كـdemotbBindingSource والذي كان مصدر البيانات الذي تم إنشاؤه في القسم السابق.
إذا تم تنفيذ جميع الخطوات المذكورة أعلاه كما هو موضح، فسوف تحصل على النتيجة المذكورة أدناه.
انتاج:-
من الإخراج، يمكنك أن ترى أن الشبكة قد تم ملؤها بالقيم من قاعدة البيانات.
نبذة عامة
- يمكن لـ C# SQL العمل مع قواعد البيانات مثل Oracle و Microsoft خادم قاعدة البيانات.
- يحتوي هذا البرنامج التعليمي لقاعدة بيانات C# على كافة الأوامر المطلوبة للعمل مع قواعد البيانات. يتضمن ذلك إنشاء اتصال بقاعدة البيانات. يمكنك إجراء عمليات مثل التحديد والتحديث والإدراج والحذف باستخدام الأوامر الموجودة في C#.
- يتم استخدام كائن DataReader في C# للاحتفاظ بكافة البيانات التي يتم إرجاعها بواسطة قاعدة البيانات. يمكن استخدام حلقة while في لغة C# لقراءة صفوف البيانات واحدًا تلو الآخر.
- يتم استخدام كائن محول البيانات لتنفيذ عمليات SQL مثل الإدراج والحذف والتحديث في قاعدة البيانات.
- يمكن لـ C# ربط عناصر التحكم بالحقول المختلفة في الجدول. إنهم ملزمون بتحديد مصدر البيانات في C#. يتم استخدام مصدر البيانات لسحب البيانات من قاعدة البيانات ونشرها في عناصر التحكم.
- يتم استخدام متصفح الربط للتنقل تلقائيًا عبر الصفوف الموجودة في الجدول.
- شبكة البيانات في C# يمكنه الاتصال بقاعدة البيانات وعرض جميع القيم من الجدول بتنسيق يشبه الشبكة.




































