【问题标题】:Multiple Update in MySQL through one query with multiple conditions in VB.net在 VB.net 中通过具有多个条件的一个查询在 MySQL 中进行多次更新
【发布时间】:2014-07-29 21:20:49
【问题描述】:

我正在尝试使用带有一些附加条件的 case 条件来创建一个查询,以避免循环它。我知道问题出在哪里。

代码在这里:

Using MysqlConn As New MySqlConnection(connString)
        Using MyCommand As New MySqlCommand()
            With MyCommand
                .Connection = MysqlConn
                .CommandText = "update beardata.results set team = case rownumber" & _
                                             "when 1 then @par1" & _
                                             "when 2 then @par1" & _
                                             "when 3 then @par1" & _
                                             "when 4 then @par1" & _
                                             "when 5 then @par1" & _
                                             "end" & _
                                             "where bnumber = @bnum and hraciden = @pd and league = @lm and rownumber in (1,2,3,4,5)"
                .CommandType = CommandType.Text
                .Parameters.AddWithValue("@par1", Team1Box.SelectedItem.ToString)
                .Parameters.AddWithValue("@bnum", currentButton.Tag)
                .Parameters.AddWithValue("@pd", Convert.ToInt16(playDayBox.SelectedItem))
                .Parameters.AddWithValue("@lm", LeagueBox.SelectedItem.ToString)
            End With
            Try
                MysqlConn.Open()
                MyCommand.ExecuteNonQuery()
                MysqlConn.Close()
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
            Finally
                MysqlConn.Dispose()
            End Try
        End Using
    End Using

你能指出关于命令文本的正确方向吗?或者建议另一种解决方案?提前致谢!

【问题讨论】:

    标签: mysql vb.net multiple-conditions


    【解决方案1】:

    在代码执行后,您是否真正查看过 CommandText 的内容?我不会打赌。为什么那不是你做的第一件事?查看您正在执行的 SQL,而不是构建该 SQL 的代码。这不是你想的那样。我建议您使用 XML 文字来创建该 SQL 代码。

    【讨论】:

    • 非常感谢!我在调试器中设置了断点,查看了该命令文本,并知道这些缺失的空格将整个命令弄得一团糟。我昨天很累,没有注意到这种愚蠢的错误:/
    猜你喜欢
    • 2022-11-17
    • 2014-10-29
    • 2017-08-15
    • 2015-10-28
    • 2019-08-21
    • 1970-01-01
    • 2022-12-11
    • 2013-10-03
    相关资源
    最近更新 更多