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

مشكلة في عمل كود ال update في vb.net 2005

مغلق
بدأه pal_tamimi في 6 فبراير 2007 · 4 رد · 825 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اخواني لدي جدول user ويحتوي على اسم المستخدم وكلمة المرور

اريد عمل تغير لكلمة المرور حسب طلب المستخدم واستخدمت هذا الكود الذي سارفقة وبه مشكلة

  Public Sub refreshdb()
		Try
			MyConn.Open()
		Catch EX As Exception
			MsgBox(EX.Message)
		End Try
		MyDS.Clear()
		Dim MyDataAdapter As New SqlDataAdapter("Select * From user", MyConn)
		MyDataAdapter.Fill(MyDS, "user")
		MyConn.Close()

		Dim TempStr As String
		For Each x In MyDS.Tables("user").Rows
			TempStr = x(1) & " " & x(2)
			ListBox1.Items.Add(TempStr)
		Next
	End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
		MyConn.Open()
		Dim sqlStatement As String = "update user set password =  '" & TextBox2.Text & " ')"
		Dim MyCommand As New SqlCommand(sqlStatement, MyConn)
		Try
			Label1.Text = MyCommand.ExecuteNonQuery()
		Catch ex As SqlClient.SqlException
			MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
		End Try
		MyConn.Close()
		refreshdb()
		Me.DisplayPosition()
	End Sub

فارجو منكم المساعدة او اعطائي طريقة اخري لكتابة الكود

تم تعديل هذه المشاركة بواسطة pal_tamimi في 6 فبراير 2007 في 19:16

#2

السلام عليكمأخي الكريم pal_tamimiالكود الخاص update الداتا بيز كالتاليأنا عامل السب دي و شغال بيها تمام

Public Sub UPDATEDB(ByVal UpTable As String, ByVal UpField1 As String_
, ByVal TypeOfField1 As SqlDbType, ByVal Upval1 As Object, ByVal WhereField As String_
, ByVal TypeOfWhere As SqlDbType, ByVal WhereVal As Object)

Dim sqlUp As String = "update " & UpTable & " set " & UpField1 & " = @1  where " & WhereField & "=@w"	

	   Dim CMDUp As New SqlCommand(sqlUp, conn)

		With CMDUp.Parameters
			.Add("@1", TypeOfField1).Value = Upval1
			.Add("@W", TypeOfWhere).Value = WhereVal
		End With

		CMDUp.ExecuteNonQuery()

	End Sub

و عند الأستخدام

 UPDATEDB("User","Password", SqlDbType.NVarChar, TextBox2.Text, fieldID, SqlDbType.SmallInt, UserName)

تقريبا أخي الكريم أنت لازم تحدد مين ال user اللي هيتغير لية ال password

تم تعديل هذه المشاركة بواسطة MAHGOOP في 6 فبراير 2007 في 20:26

------------------------------------------------

لا إله إلا أنت سبحانك أني كنت من الظالمين

-----------------------------------

27e64a660f.gif

#3

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

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

#4

مش عارف الكود بيظهر بالشكل دا لية

بس تقريبا كدة هيكون أفضل

		 Dim SQl As String = "update user set  password=@P"		 Dim Cmd As New SqlClient.SqlCommand(SQl, myCon)
		 Cmd.prametrs.add("@P", SqlDbType.NVarChar).value = TextBox2.Text
		 Cmd.ExecuteNonQuery()

تم تعديل هذه المشاركة بواسطة MAHGOOP في 6 فبراير 2007 في 22:53

------------------------------------------------

لا إله إلا أنت سبحانك أني كنت من الظالمين

-----------------------------------

27e64a660f.gif

#5

,,,,,,,اخي الكريم اعتقد الخطا في ال foreach .....

....

For Each x In MyDS.Tables("user").Rows
			TempStr = x(1) & " " & x(2)
			ListBox1.Items.Add(TempStr)
		Next

........وللكني مبرمج بلغة C# ....والكود الصحيح كالتالي :

foreach(DataRow x in MyDS.Tables["user"].Rows)
{
}

>>>اي انك لم تستخدم DataRow في ال foreach

,,,,,,,اخي الكريم اعتقد الخطا في ال foreach .....

....

For Each x In MyDS.Tables("user").Rows
			TempStr = x(1) & " " & x(2)
			ListBox1.Items.Add(TempStr)
		Next

........وللكني مبرمج بلغة C# ....والكود الصحيح كالتالي :

foreach(DataRow x in MyDS.Tables["user"].Rows)
{
}

>>>اي انك لم تستخدم DataRow في ال foreach

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

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