منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مشكلة في استخدام البارامترات ؟ - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40)
+--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41)
+--- الموضوع : مشكلة في استخدام البارامترات ؟ (/showthread.php?tid=9570)

الصفحات: 1 2


مشكلة في استخدام البارامترات ؟ - kafi - 09-07-13

بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته

كتبت كود لتعديل بيانات سجل باستخدام البارامترات

[HTML]Dim cmd As New OleDbCommand("update Zatea set Customer=@txt_Customer,Area=@Area_Combobox, Bayan=@lbox_bayan, Phone1=@txt_Phone1, Phone2=@txt_Phone2, Mobile=@txt_mobile, Fax=@txt_Fax, Email=@txt_Email,Notes=@txt_Note where zatea_id=txt_Zatea_id.text", Conn)


cmd.Parameters.AddWithValue("@Customer", OleDbType.VarChar).Value = txt_Customer.Text

cmd.Parameters.AddWithValue("@Area", OleDbType.VarChar).Value = Area_Combobox.Text
cmd.Parameters.AddWithValue("@bayan", OleDbType.VarChar).Value = lbox_Bayan.SelectedItem

'cm.Parameters.AddWithValue("@age", OleDbType.Integer).Value = Val(age.Text)
'cm.Parameters.AddWithValue("@dob", OleDbType.Date).Value = dob.Text

cmd.Parameters.AddWithValue("@Phone1", OleDbType.VarChar).Value = txt_Phone2.Text
cmd.Parameters.AddWithValue("@Phone2", OleDbType.VarChar).Value = txt_Phone1.Text
cmd.Parameters.AddWithValue("@Mobile", OleDbType.VarChar).Value = txt_Mobile.Text
cmd.Parameters.AddWithValue("@Fax", OleDbType.VarChar).Value = txt_fax.Text

cmd.Parameters.AddWithValue("@Email", OleDbType.VarChar).Value = txt_Email.Text
cmd.Parameters.AddWithValue("@Notes", OleDbType.VarChar).Value = txt_Note.Text


DataConnection()

Try
cmd.ExecuteNonQuery()
MsgBox("تم التعديل بنجاح", MsgBoxStyle.Information, "")
Catch ex As Exception
MsgBox(Err.Description, MsgBoxStyle.Critical, "")

End Try[/HTML]


مشكلة في استخدام البارامترات ؟ - سعود - 09-07-13

كود :
cmd.Parameters.AddWithValue("@Phone1", OleDbType.VarChar).Value = txt_Phone2.Text
cmd.Parameters.AddWithValue("@Phone2", OleDbType.VarChar).Value = txt_Phone1.Text
cmd.Parameters.AddWithValue("@Mobile", OleDbType.VarChar).Value = txt_Mobile.Text


ما نوع البيانات التي نسختها انا من موضوعك؟ ان كان رقم فضع بدل كلمة varchar ضع نوع int او integer


مشكلة في استخدام البارامترات ؟ - سعود - 09-07-13

وما هي رسالة الخطا؟؟


مشكلة في استخدام البارامترات ؟ - kafi - 10-07-13

السلام عليكم

شكرا اخي سعود على اجابتك

نوع البيانات هي من النوع string

ورسالة الخطأ
No value given for one or more required Parameters

وفيما يلي المثال

ارجو تعديل الكود المرفق بالمثال، والاشارة الى مكمن الخطأ الذي وقعت فيه، حتى اتعلم

والف شكر
وكل عام وانتم بخير


مشكلة في استخدام البارامترات ؟ - سعود - 12-07-13

الخطا اللي واجهني بالمثال هو
إقتباس :Update requires a valid InsertCommand when passed DataRow collection with new rows.

ويعني لابد من اضافة كائن امر ادخال

والحل هكذا
بعد تعريف da التعريف الاول
كود :
Dim da As OleDb.OleDbDataAdapter

اسفلها نكتب
كود :
Dim ic As OleDbCommandBuilder


والتعيين لـ da
كود :
da = New OleDb.OleDbDataAdapter(SQL, Conn)

نكتب بعده التالي:
كود :
ic = New OleDbCommandBuilder(da)



مشكلة في استخدام البارامترات ؟ - سعود - 12-07-13

اوووووووووووه معلش سانظر بكود التعديل Smile


مشكلة في استخدام البارامترات ؟ - سعود - 12-07-13

انظر المثال بعد التعديل


مشكلة في استخدام البارامترات ؟ - Ahmed_online - 12-07-13

لما لا تستخدم الكود هكذا

PHP كود :
Dim UpdateStr As String "Update Table1 Set Column1 = @Column1,Column2 = @Column2,Column3 = @Column3 Where Column1 = @OldColumn1"
        
Dim UpdateCmd As New OleDbCommand(UpdateStrCon)

        
UpdateCmd.Parameters.Add("@Column1"OleDbType.Char20"Column1")
        
UpdateCmd.Parameters.Add("@Column2"OleDbType.Char20"Column2")
        
UpdateCmd.Parameters.Add("@Column3"OleDbType.Char20"Column3")
        
UpdateCmd.Parameters.Add("OldColumn1"OleDbType.Char20"Column1").SourceVersion DataRowVersion.Original

        Dim DataAdapter1 
As New OleDbDataAdapter
        DataAdapter1
.UpdateCommand UpdateCmd 



مشكلة في استخدام البارامترات ؟ - kafi - 12-07-13

الف الف شكر اخي
سعود
وجزاك الله الف خير، وضاعف اجرك في هذه الايام الفضيلة
تتبعت الحل الذي تفضلت به، وعرفت اين خطئي

بارك الله فيك
والسلام عليكم


مشكلة في استخدام البارامترات ؟ - kafi - 12-07-13

شكرا اخي
ahmed_Online
ساجرب الطريقة التي تفضلت بها

والف شكر على محاولتك اجابتي
والسلام عليكم