【问题标题】:UPDATE MySQL using VB.NET使用 VB.NET 更新 MySQL
【发布时间】:2011-07-25 02:46:45
【问题描述】:

我正在使用带有 MySQL 数据库的 VB.NET。我想更新此代码以在一个 SQL 而不是三个 SQL 中完成所有操作。有人知道怎么做吗?

这是我正在使用的代码,工作正常,但多行太慢...

If count3 = "1" Then

    Dim myCommand As New MySqlCommand
    Dim myAdapter As New MySqlDataAdapter
    Dim SQL As String
    myCommand.Connection = conn
    myAdapter.SelectCommand = myCommand
    SQL = "UPDATE employees SET emprole1 = '" & val2 & "' WHERE emprole1 = '" & val1 & "'"
    myCommand.CommandText = SQL
    myCommand.ExecuteNonQuery()
    SQL = "UPDATE employees SET emprole2 = '" & val3 & "' WHERE emprole2 = '" & val2 & "'"
    myCommand.CommandText = SQL
    myCommand.ExecuteNonQuery()
    SQL = "UPDATE employees SET emprole3 = '" & val4 & "' WHERE emprole3 = '" & val3 & "'"
    myCommand.CommandText = SQL
    myCommand.ExecuteNonQuery()

End If

【问题讨论】:

    标签: .net mysql vb.net visual-studio


    【解决方案1】:

    这只是我的猜测,但您可以尝试将所有三个 SQL 语句粘合在一起;很像

    SQL = "update employees set ... ; update employees set ... ;";
    

    注意分隔语句的分号。

    【讨论】:

    • 我可以这样做:
    • SQL = "更新员工 SET emprole1 = '" & val2 & "' WHERE emprole1 = '" & val1 & "' ;" SQL &= "UPDATE 员工 SET emprole2 = '" & val3 & "' WHERE emprole2 = '" & val2 & "' ;" SQL &= "UPDATE employees SET emprole3 = '" & val4 & "' WHERE emprole3 = '" & val3 & "'
    • @Boomgirl 如果解决了您的问题,请单击以接受正确的答案。
    • 我真的建议您也使用参数化查询,而不是像emprole = " & var 这样的操作,这正是 SQL 注入攻击所依赖的。请参阅此处了解其完成方式:-) stackoverflow.com/questions/652978/…
    猜你喜欢
    • 2012-10-19
    • 2011-08-09
    • 1970-01-01
    • 2017-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多