منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : لايمكن التعديل في البيانات بقاعدة البيانات اكسس؟؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم

لدي قاعدة بيانات وتم ربطها باالمشروع

استطيع ان اضيف و ان احذف منه ولكن لا استطيع ان اعدل في البيانات ؟؟

ممكن الكود المناسب لعملية التعديل ؟

انا استخدم الكود التالي

PHP كود :
Dim SavInto As New OleDb.OleDbCommand
        Dim adapter2 
As New OleDbDataAdapter(SQLstrConn)
        
Conn.Open()
        
SavInto.Connection Conn
        SavInto
.CommandType CommandType.Text
        SavInto
.CommandText "UPDATE a1 SET name = '" Trim(TextBox1.Text) & "' , ro1 = '" Trim(TextBox2.Text) & "' , id1= '" Trim(TextBox3.Text) & "' , id2= '" Trim(TextBox4.Text) & "' , id3= '" Trim(TextBox5.Text) & "' , namper1= '" Trim(TextBox6.Text) & "' , namper2= '" Trim(TextBox7.Text) & "' , fs= '" Trim(TextBox9.Text) & "' , ml= '" Trim(TextBox10.Text) & "'"
        
SavInto.ExecuteNonQuery()
        
Conn.Close()
        
MsgBox("تم تعديل البيانات"
أخوي لازم تحدد وفق إي حقل يتم التعديل
بمعنا البرنامج يريد التعديل لاكن انت لم تحدد له رقم الحقل الذي تريد تعديله

الكود قبل التعديل

كود :
SavInto.CommandText = "UPDATE a1 SET name = '" & Trim(TextBox1.Text) & "' , ro1 = '" & Trim(TextBox2.Text) & "' , id1= '" & Trim(TextBox3.Text) & "' , id2= '" & Trim(TextBox4.Text) & "' , id3= '" & Trim(TextBox5.Text) & "' , namper1= '" & Trim(TextBox6.Text) & "' , namper2= '" & Trim(TextBox7.Text) & "' , fs= '" & Trim(TextBox9.Text) & "' , ml= '" & Trim(TextBox10.Text) & "'"

لنفرض أن لديك حقل Num وبداخل الحقل رقم الصنف أو رقم العميل .. يجب ان تجعل المستخدم تحديد الصنف الذي تريد تعديله
الآن سيتم من المستخدم تحديد رقم الصنف في حقل مثلا TextBox15.text

سنضيف هذا الكود في النهاية

كود :
[color=#ff0000]where Num=" & TextBox15.text"[/color]


الكود بعد التعديل

كود :
SavInto.CommandText = "UPDATE a1 SET name = '" & Trim(TextBox1.Text) & "' , ro1 = '" & Trim(TextBox2.Text) & "' , id1= '" & Trim(TextBox3.Text) & "' , id2= '" & Trim(TextBox4.Text) & "' , id3= '" & Trim(TextBox5.Text) & "' , namper1= '" & Trim(TextBox6.Text) & "' , namper2= '" & Trim(TextBox7.Text) & "' , fs= '" & Trim(TextBox9.Text) & "' , ml= '" & Trim(TextBox10.Text) & "' [color=#ff0000]where Num=" & TextBox15.text & ""[/color]
* ملاحظة
لاحظة أنك أستخدمت أكواد كثيره حتى تقوم بتعديل لما لا تختصر الأكواد أنظر للكود بعد الأختصار والتصحيح من 9 اسطر إلى 5 اسطر

كود :
[align=left]
Dim SavInto As New OleDb.OleDbCommand("update a1 set name='" & Trim(TextBox1.Text) & "',ro1='" & Trim(TextBox2.Text) & "',id1='" & Trim(TextBox3.Text) & "',id2='" & Trim(TextBox4.Text) & "',id3='" & Trim(TextBox5.Text) & "',namper1='" & Trim(TextBox6.Text) & "',namper2='" & Trim(TextBox7.Text) & "', fs='" & Trim(TextBox9.Text) & "',ml='" & Trim(TextBox10.Text) & "[color=#ff0000]' where Num=" & TextBox15.text &[/color][color=#FF0000] ""[/color], Conn)

Conn.Open()

SavInto.ExecuteNonQuery()

Conn.Close()

MsgBox("تم تعديل البيانات")[/align]
اشكرك على سرعة ردك وتجاوبك استاذي الكريم

ولكن بعد تركيب الكود تظهر لي العبارة التالية

تأكد من هذي العلامة ' [SIZE=4]قبل وبعد الحقل إذا كان نصي أما إذا كان رقمي بلا تضعها لاقبل ولا بعد[/SIZE]
استاذي الفاضل لم تزال المشكلة قائمة
السلام عليكم ورحمة الله وبركاته


بعد إذن أخي Easy 4ever

تفضل، لازم تتأكد من نوع بيانات كل حقل، الحقل الرقمي ضع مربع النص الخاص به داخل val مثل
كود :
command.Parameters.AddWithValue("@id1       ", [color=#FF0000]Val([/color]Me.txtID1.Text[color=#FF0000])[/color])


PHP كود :
Dim sql As String " UPDATE a1 SET         " _
                            
"   name    = @name     " _
                            
" , ro1     = @ro1      " _
                            
" , id1     = @id1      " _
                            
" , id2     = @id2      " _
                            
" , id3     = @id3      " _
                            
" , namper1 = @namper1  " _
                            
" , namper2 = @namper2  " _
                            
" , fs      = @fs       " _
                            
" , ml      = @ml       "

        
Dim command As New OleDbCommand(sqlconn)
        
command.Parameters.AddWithValue("@name      "Me.txtName.Text)
        
command.Parameters.AddWithValue("@ro1       "Me.txtRo1.Text)
        
command.Parameters.AddWithValue("@id1       "Me.txtID1.Text)
        
command.Parameters.AddWithValue("@id2       "Me.txtID2.Text)
        
command.Parameters.AddWithValue("@id3       "Me.txtID3.Text)
        
command.Parameters.AddWithValue("@namper1   "Me.txtNamper1.Text)
        
command.Parameters.AddWithValue("@namper2   "Me.txtNamper2.Text)
        
command.Parameters.AddWithValue("@fs        "Me.txtFS.Text)
        
command.Parameters.AddWithValue("@ml        "Me.txtML.Text)

        
conn.Open()
        
command.ExecuteNonQuery()
        
conn.Close()

        
MsgBox("تم تعديل البيانات"



السلام عليكم ورحمة الله وبركاته
أعتذر أخي لم أشاهد رسالتك إلا اليوم بسبب غيابي عن المنتدى الأيام السابقه


ياليت ترفع لنا مثال وسأقوم بتعديل عليه .
لان لا أعلم المشكلة في قاعدة البيانات نفسها ( أنواع الحقول ) أم المشكلة عند نقلك للكود أو ترتيبك الكود
إما في حال وجود المثال سأقوم بفحصه خطوه بخطوه .
يعجز لساني عن شكرك و شكر اخونا أبو رائد

تفضل رابط الملف
http://www.up-00.com/dldsgk25923.rar.html
المثال بعد التعديل بالمرفق

المشكلة كانت في حقل ml بحيث انك وضعته في قاعدة البيانات حقل رقمي
وعند التعامل معه بالكود وضعته بين هذي العلامتين ' ' حيث ان الحقول الرقميه لا تضع بين هذي العلامتين
قمت بتعديل ورفعه بالمرفق
بارك الله فيك وبارك لك


اشكرك على سعة صدرك و مساعدتك للجميع
الصفحات : 1 2