الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود تحديث السجلات

مغلق
بدأه طموحة في 27 مايو 2006 · 12 رد · 1,104 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ,

ارجو اعطائي كود يحدّث سجل سجل , بعد الربط database, حيث تم وضع oledbconnection كذلك adapterوايضا dataset

والمشكلة انه بعد مايربط بالقاعدة , واعدل على الtext box في التشغيل فإنه يحفظ لي على كل السجلات الموجوده بالقاعدة

فمثلا عند وضع عشرة من الـ textbox واربط كل واحد بحقل معين من الجدول, وبعد التشغيل والتعديل على اي تيكست بوكس ,الاحظ ذلك يعدل على كل السجلات عند التنقل بين السجلات عن طريق ازرار بأكواد للسابق والتالي

فرجاء من عنده حل للمشكلة يرد علي

#3

يعني عندي قاعدة بيانات , واريد عمل تعديلات فيها عن طريق برنامج , بحيث امشي على سجل سجل واعدل , واذا ضغطت زر التحديث اللي فيه الكود اللي كتبته بالاسفل المفروض يحدث زي التعديلات اللي اسويها ,

لكن اللي يحصل معي انه يحفظ آخر تعديل عملته لأي سجل ويطبقة على باقي السجلات , ليش؟

ملاحظة , طبعا عملت adapter و dateaset, وعملت ربط لكل textboxلجدول من خاصيةكل textbox للحقل المطلوب من الجدول , وعند التشغيل يظهر لي السجلات تمام واقدر اتنقل بينها بأزرار السابق والتالي , لكن المشكلة اذا ضغطت زر تحديث بعد ما أعدل على أي سجل يعدل على كل السجلات , ويصير اذا سكرت البرنامج وشغلته واحاول امشي بين السجلات يعدل عليها كلها ,

Dim u As New OleDbCommand

u.CommandText = "update employee set department= " & TextBox2.Text & ",PHONE=" & TextBox3.Text & ",address=" & TextBox4.Text & ",id= " & TextBox5.Text & " "

u.Connection = OleDbConnection1

OleDbConnection1.Open()

u.ExecuteNonQuery()

OleDbConnection1.Close()

===============================

طبعا عّرفت

Imports System.Data.OleDb

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

OleDbDataAdapter1.Fill(DataSet11, "employee " )

ارجو الرد

#4

المشكلة عندك في الجملة

لازم تحطي الشرطwhere او راح يعدل لك على كل السجلات

اتوقع الحل يكون

Dim u As New OleDbCommand

u.CommandText = "update employee set department= " & TextBox2.Text & ",PHONE=" & TextBox3.Text & ",address=" & TextBox4.Text & ",id= " & TextBox5.Text & " where id="& 10

في الحالة هذي راح يعدل بس اللي رقم id حقه 10

بالتوفيق

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#5

ماظبط معي للأسف

يطلع خطأ غند الكود

updatecom.ExecuteNonQuery()

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

وشرط where ماضبط , وكيف اكتبه ووين , لأني ابي التعديل من عند التشغيل

ارجو المساعدده والتوضيح

#6

يا أخت طموحة جواب الأخ Romantic_touch صحيح وأكيد ( الخطأ انك ما حددتي الصف اللي ودك تعدلين عليه - ويتم هذا باستخدام Where)

بس حاولي تتأكدي من حاجتين :

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

update employee set department= '" & TextBox2.Text & "' ....

لاحظي (' ) قبل وبعد الادخال

2. اعتقد انه لا يمكن تعديل على حقل تم استخدامه في Where .. في حالة مثالك جربي :

u.CommandText = "update employee set department= " & TextBox2.Text & ",PHONE=" & TextBox3.Text & ",address=" & TextBox4.Text & " where id="& 10

تم تعديل هذه المشاركة بواسطة Scoool في 29 مايو 2006 في 08:27

#7

اكتبي رسالة الخطا الي طلعت لك

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#8

اشكركم على تجاوبكم ,

الأخ scoool تأكدت من نوع البيانات عندي في القاعده

والرسالة اللي تطلع اذا اضفت where هي

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in system.data.dll

والباقي هو اني للأسفففففففف ماعرفت له , ومايضبط معي

ليييييييييييش ياناس

#9

اشكركم على تجاوبكم ,

الأخ scoool تأكدت من نوع البيانات عندي في القاعده

والرسالة اللي تطلع اذا اضفت where هي

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in system.data.dll

والباقي هو اني للأسفففففففف ماعرفت له , ومايضبط معي

ليييييييييييش ياناس

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

#10

وينكم انتظر منكم حل :(

#11

أختي الكريمة

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

شارك لو سمحت في هذا الاستبيان ... دقيقة من وقتك

اضغط هنا للمشاركة لو سمحت

#12

آسف جدا على التأخير .. لكن الويكند كان يهبل :lol:

عندي حل ان شاء الله يفيدك .. لانه الرسالة اللي طلعت لك ما بينت وين الخلل لكن على العموم :

أعملي Trace باستخدام Braek Point على كود Update وحاول تعمل Copy لجملة Update اللي تطلع لك وقت الـ Tracing وحاولي تنفيذها على قاعدة البيانات نفسها عشان تعرفي السبب .. اذا كان في اي خطأ اثناء تنفيذ الجملة على قاعدة البيانات -> حاولي تعدلي الخطأ وتغيري في البرنامج ايضا .. غير كده :blink:

#13

كود بناء التحديث الآلي للداتاست , كيف مافهمت قصدك

والى الآن مامشى الحال :(

هذا الموضوع مغلق.

مواضيع مشابهة