使用Visual Basic 2010更新数据库

时间:2013-10-16 04:54:45

标签: sql vb.net

我在这里问,因为我的代码存在问题。

假设更新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”)包含当前登录用户名。

班级是我的桌子。

考试是一个专栏,如果是,那就意味着用户参加了考试。

我要做的是将用户限制为只有一个测验。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

“是”和会话值将被视为列或数据源,它将提供这样的查询。

UPDATE class SET exam=Yes WHERE name = <SessionValue>

你能试试吗?

Dim SQLStatement As String = "UPDATE class SET exam='Yes' WHERE name = '" & Session("name") & "'"