在VB.NET中删除SQL语句

时间:2012-07-27 02:17:37

标签: mysql sql database vb.net

我是VB.NET和MySqL的新手。我想删除数据库中的记录。 使用,

    Dim SQLStatement As String = "DELETE name,date FROM people"
    RetrieveInfos(SQLStatement)

其中,

Public Sub RetrieveInfos(ByRef SQLStatement As String)
    Dim cmd As MySqlCommand = New MySqlCommand

    With cmd
        .CommandText = SQLStatement
        .CommandType = CommandType.Text
        .Connection = SQLConnection
        .ExecuteNonQuery()

    End With

    SQLConnection.Close()
    SQLConnection.Dispose()
End Sub

但是有一个InvalidOperationException错误,我很困惑。 我想删除数据库中的记录而不引用"数字= VALUE"为了删除以前记录的值。那可能吗?

任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:1)

你遇到了一些问题:

  1. 由于您要删除记录,因此不在删除语句中指定列名。

  2. 您的命令如果成功执行,将删除人员表中的每条记录。

  3. 您正在关闭并在RetrieveInfos方法的末尾处理SQLConnection。如果此连接在代码中的其他位置打开,则只能首次执行代码。

  4. 如果正在删除,则不应将此方法称为“检索”。

  5. 该命令应包含在using语句

    Using cmd As MySqlCommand = New MySqlCommand
        With cmd
            .CommandText = SQLStatement
            .CommandType = CommandType.Text
            .Connection = SQLConnection
            .ExecuteNonQuery()
        End With
    End Using