المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : سؤال لمهندسين البرمجيات



M-AraBi
04-09-2010, 09:30 PM
لو اتسائلت عليكم يا مهندسينا:

انا عم اربط قاعدة بيانات SQL
ببرنامج C#
على Visual Studio 2008

بعد ما عملت الاتصال وضفت القاعدة عن طريق
add new data source
وحطيت ال data grid view لجدول بالقاعدة

صار عني مشكلة بالحفظ طبعاً بعد التشغيل (debug)
صار ما يرضى يحفظ أي تغيير ويعطيني خطأ بدالة الحفظ اللي هي جاهزة أصلأ
فشو الحل ؟؟؟
مع العلم اني حاولت كتير طرق وما اشتغلوا منيح


وكمان عندي سؤال : كيف بدي اخد قيمة من سطر وعمود محددين وكيف بدي غيرها

مع الشكر

En.Khaled Alfaiomi
04-09-2010, 09:43 PM
هلا بالغالي

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

طريقة ربط قاعد البيانات ب c#


الان ضع Button على الفورم وضع أيضا listbox



ثم إكتب في الكود الخاص بالحدث Click لل button1




SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\TD\* *******s\mydata****.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
string mycmd = "select FirstName,Age from mytable";
SqlCommand mysqlcmd = new SqlCommand(mycmd, cn);
cn.Open();
SqlDataReader myreader = mysqlcmd.ExecuteReader();
while (myreader.Read())
{
listBox1.Items.Add("firstname: " + myreader["FirstName"].ToString() + " Age: " + myreader["Age"].ToString());
}
cn.Close();
myreader.Close(); شرح الكود


SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\TD\* *******s\mydata****.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
هنا قمنا بتعريف الإتصال الخاص بقاعدة البيانات mydata****


string mycmd = "select FirstName,Age from mytable"; هنا قمنا بتعريف متغير من نوع String يحوي على نص جملة الإستعلام


SqlCommand mysqlcmd = new SqlCommand(mycmd, cn);
cn.Open(); هنا قمنا بتعريف ال Command الذي سوف نرسله لقاعدة البيانات وفتح الإتصال


SqlDataReader myreader = mysqlcmd.ExecuteReader(); الان قمنا بتعريف قارئ للبيانات علما أن أنواع القوارء هي


ExecuteReader: في حال كان الناتج عدد كبير من البيانات...

ExecuteNonQuery: في حال لا يوجد أي قيمة مرجعة مثل عمل update أو delete ...

ExecuteScalar : في حال كان لا يوجد إلا قيمة مرجعة واحدة مثل الإسم الأول مثلا...

ExecuteXmlReader : لأخذ الناتج على شكل XML ...


الكود التالي


while (myreader.Read())
{
listBox1.Items.Add("firstname: " + myreader["FirstName"].ToString() + " Age: " + myreader["Age"].ToString());
} قراءة البيانات الناتجة كما في الشكل السابق


cn.Close();
myreader.Close(); إغلاق كل شيئ تم إستخدامه وهو الإتصال والقارئ


الان نكون قد بدأنا بأساسيات ربط قواعد البيانات

وأي سؤال رح حاول ساعدك قدر الأمكان

تحياتي لك ياغالي

M-AraBi
05-13-2010, 03:36 PM
شكراً أخي خالد على المساعدة
لغيت فكرة القاعدة من مشروعي
لأنه بس جدول واحد

عبد العزيز الباشا
05-23-2010, 07:28 PM
يا عربي يا حبيبي مزال لغيت قاعدة البيانات ليش متعزب قرائنا الأعزاء
ما بتبطلا هالعادة

HE88RO
07-22-2010, 05:16 PM
ههههههههه

أنا تعذبت متل ما قال عبد العزيز

بدي أعتذار

مشكور أخ خالد ع الشرح الحلو

M-AraBi
07-22-2010, 05:45 PM
ليش انتو فايتين من شان المشروع ولا من شان الفائدةالعليمة
:z026: