【发布时间】:2016-03-31 21:15:46
【问题描述】:
我正在为大学做一个项目,我们刚刚开始了解 VB.net。我们的任务是制作一个表格,从模拟数据库中提取数据,并像大学的注册表/学生空间一样,在那里他们可以看到正在使用的模块、DOB 等...
我们不断收到错误代码:
UPDATE 语句中的语法错误。
每次我们尝试运行表单的一部分时,我们都会为学生注册一个新模块。下面是我们尝试运行以实现此目的的代码。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim sqlString As String = "UPDATE [Student] SET module = @module, moduleName = @moduleName, credit = @credit, moduleLeader = @moduleLeader WHERE studentID =" & frmMenuOptionsStudent.lblStaffNo.Text & "'"
Dim cmd As New OleDbCommand(sqlString, conn)
cmd.Parameters.AddWithValue("@module", ComboBox1.Text)
cmd.Parameters.AddWithValue("@moduleName", TextBox2.Text)
cmd.Parameters.AddWithValue("@credit", TextBox3.Text)
cmd.Parameters.AddWithValue("@moduleLeader", TextBox4.Text)
Try
conn.Open()
cmd.ExecuteNonQuery()
MessageBox.Show("New Module Added")
conn.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
我们怀疑这可能是一个简单的修复,但我们根本找不到错误!帮助! :(
【问题讨论】:
-
studentID ='"错过了一个勾号...使用参数作为 where 你不会有那个... -
为什么不像其他的那样使用 Where 子句的参数?它可以防止您遇到的丢失刻度问题
-
现在,点击好人给你的答案旁边的复选标记,
-
下次写出sqlString进行调试。