Question

J'essaie de créer une requête en utilisant la condition de cas avec quelques conditions supplémentaires pour éviter de la boucler.Je ne sais pas où est le problème.

Codez ici :

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

Pouvez-vous m'indiquer la bonne direction concernant le texte de commande ?Ou suggérer une autre solution à ce problème ?Merci d'avance!

Était-ce utile?

La solution

Avez-vous réellement regardé le contenu de ce CommandText après l'exécution de ce code ?Je parie que non.Pourquoi n’est-ce pas la première chose que vous avez faite ?Regardez le SQL que vous exécutez, pas le code qui construit ce SQL.Ce n'est pas ce que vous pensez.Je vous suggère d'utiliser un littéral XML pour créer ce code SQL.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top