不要在我的应用程序中显示mysql错误

时间:2015-01-25 12:27:04

标签: mysql vb.net

你好,我的应用程序中有一个关卡系统,使用200点上升一个级别,所以当你有0分你不能升级lvl时,我在mysql中放置“unsigned”以不允许我的积分列中的负值。但现在,当用户获得0分并尝试升级lvl时显示该消息:enter image description here

我将此代码添加到lvl,并扣除200分:

MysqlConn = New MySqlConnection
    MysqlConn.ConnectionString =
        "server=xxxx;userid=xxxxx;password=xxxxx;database=xxxx"
    Try
        MysqlConn.Open()
        Dim query As String = "UPDATE EmployeeInfo Set nivel= nivel + 1,puntos = puntos - 200 WHERE user_name = ('" & My.Settings.user_name & "') AND password = ('" & My.Settings.user_password & "')"
        Dim cmd As New MySqlCommand(query, MysqlConn)
        cmd.ExecuteNonQuery()
        MysqlConn.Close()

    Catch ex As MySqlException
        MessageBox.Show(ex.Message)
    Finally
        MysqlConn.Dispose()
    End Try

我只是想不显示错误窗口,并显示一个简单的msgbox,没有关于我的mysql数据库的信息。提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用查询逻辑消除这种情况:如果您想在nivel为零时增加puntos,请确保没有为puntos插入负数:

puntos = GREATEST(puntos - 200, 0) ...

如果您不希望在puntos为零时更新任何内容,只需在查询末尾添加一个子句:

AND puntos > 0