我是vb.net中Mysql的新手。
我想要的是当我单击“保存”按钮时,我希望更新mysql数据库并更新collum Wcoins,它将获得Label2.Text中的值
我的代码:
Dim conn As MySqlConnection
conn = New MySqlConnection("server=REMOVED;Port=REMOVED; user id=REMOVED; password=REMOVED; database=REMOVED")
Dim username As Boolean = True
conn.Open()
Dim sqlquery As String = "UPDATE * FROM NewTable WHERE Wcoins=label2.text"
Dim data As MySqlDataReader
Dim adapter As New MySqlDataAdapter
Dim command As New MySqlCommand
command.CommandText = sqlquery
command.Connection = conn
adapter.SelectCommand = command
data = command.ExecuteReader
data.Close()
conn.Close()
我犯了一些错误,但我试图更新Wcoins所以它会删除旧值,它将获得label2.text
中显示的值任何帮助都将得到真正的帮助
我是荷兰人,所以如果你看到拼写错误,请纠正它们
答案 0 :(得分:0)
Update SQL语句的正确语法是
UPDATE <table> SET <field>=<value> WHERE <PrimaryKey> = <valueForPK>
所以你的正确命令文本应该是
UPDATE NewTable SET Wcoins = <value> WHERE ????? = ??????
我不知道你的表的主键的名称是什么,这对于给你正确的答案是必不可少的,因为没有WHERE部分,UPDATE命令将改变你的表的每个记录,我想这是不是你的意图,
最后,您的代码错误,因为将使用MySqlCommand.ExecuteNonQuery()执行UPDATE命令(如INSERT或DELETE),而不使用ExecuteReader。
还有其他要点在你的代码中强调字符串连接以形成命令文本(Sql Injection和解析错误),但此时最好先解决UPDATE问题。
编辑既然您已经提供了有关列名称的更多信息,我可以更新我的答案,以显示我将如何编写该代码
Dim sqlquery = "UPDATE NewTable SET Wcoins=@newValue WHERE Name=@nameValue"
Using conn = New MySqlConnection(.........)
Using command = New MySqlCommand(sqlquery, conn)
conn.Open()
command.Parameters.AddWithValue("@newValue", label2.Text)
command.Parameters.AddWithValue("@nameValue", label1.Text)
command.ExecuteNonQuery()
End Using
End Using
答案 1 :(得分:0)
是啊,我尝试了一些代码,我发现了一个有效的代码。
代码:
Dim conn As MySqlConnection
conn = New MySqlConnection("server=REMOVED;Port=REMOVED; user id=REMOVED; password=REMOVED; database=REMOVED")
Dim username As Boolean = True
conn.Open()
Dim sqlquery As String = "UPDATE NewTable SET Wcoins='" & Label2.Text & "' WHERE Name='" & Label1.Text & "';"
Dim data As MySqlDataReader
Dim adapter As New MySqlDataAdapter
Dim command As New MySqlCommand
command.CommandText = sqlquery
command.Connection = conn
adapter.SelectCommand = command
data = command.ExecuteReader
data.Close()
conn.Close()
谢谢大家帮助我