我在这里问,因为我的代码存在问题。
假设更新SQL数据库,但它显示错误
键不能为空。参数名称:key
它突出显示了SQLConnection.Open()
Private Sub btnTakeQuiz_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnTakeQuiz.Click
Dim SQLStatement As String = "UPDATE class SET exam=Yes WHERE name = " & Session("name") & ""
TakeQuiz(SQLStatement)
End Sub
Public Sub TakeQuiz(ByRef SQLStatement As String)
Dim cmd As MySqlCommand = New MySqlCommand
SQLConnection.Open()
With cmd
.CommandText = SQLStatement
.CommandType = CommandType.Text
.Connection = SQLConnection
.ExecuteNonQuery()
End With
SQLConnection.Close()
SQLConnection.Dispose()
Server.Transfer("Quiz.aspx", True)
End Sub
Session(“name”)包含当前登录用户名。
班级是我的桌子。
考试是一个专栏,如果是,那就意味着用户参加了考试。
我要做的是将用户限制为只有一个测验。任何人都可以帮助我吗?
答案 0 :(得分:1)
“是”和会话值将被视为列或数据源,它将提供这样的查询。
UPDATE class SET exam=Yes WHERE name = <SessionValue>
你能试试吗?
Dim SQLStatement As String = "UPDATE class SET exam='Yes' WHERE name = '" & Session("name") & "'"