【发布时间】:2014-04-07 04:35:11
【问题描述】:
我正在运行以下代码(部分代码)以连接到PHPmyadmin DB
Private Sub sreg_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
SqlConnection.ConnectionString = ServerString
Try
If SqlConnection.State = ConnectionState.Closed Then
SqlConnection.Open()
MsgBox("Successfully connected to MySQL DB")
Else
SqlConnection.Close()
MsgBox("Connection is Closed")
End If
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Public Sub SaveNames(ByRef SQLStatment As String)
Dim cmd As MySqlCommand = New MySqlCommand
With cmd
.CommandText = SQLStatment
.CommandType = CommandType.Text
.Connection = SqlConnection
.ExecuteNonQuery()
End With
SqlConnection.Close()
MsgBox("Succesfully Added!")
SqlConnection.Dispose()
End Sub
但是,.ExecuteNonQuery() 在错误和问题方面让我非常头疼。它上传数据,但之前只能执行一次(一次上传),它会返回错误。
当我删除.ExecuteNonQuery() 时没有数据上传?所以我想这是必要的。
这是我上传的代码(部分)
sql = "INSERT INTO students(student_id, title, initial, surname,
street, city, pcode, country ) VALUES ('" & strStudent & "', '"
& vtital & "', '" & vinital & "', '" & vsurname & "', '" & vstreet
& "', '" & vcity & "', '" & vpcode & "', '" & vcountry & "' )"
SaveNames(sql)
希望我的问题是有意义的,并且我可以传达信息
【问题讨论】:
-
在你的学生表中是 student_id 主键自动递增吗?您收到的错误信息是什么?
-
`它返回一个错误`WHAT ERROR?
-
@MilenPavlov 是的 student_id 是主键而不是自动递增
-
@walther 我没有收到任何错误消息,它只是退出运行时并说 InvalidOperationException 已处理,然后在 .executenonquery() 下划线
-
数据类型不匹配。不要用单引号传递 student_id
标签: mysql sql vb.net winforms visual-studio-2010