Quel est le role de executenonquery en c#? [Résolu]

cs_loviso 1 Messages postés vendredi 17 juillet 2009Date d'inscription 12 mars 2010 Dernière intervention - 6 août 2009 à 12:36 - Dernière réponse : nhervagault 6069 Messages postés dimanche 13 avril 2003Date d'inscription 15 juillet 2011 Dernière intervention
- 6 août 2009 à 13:23
Salut
je suis entrain de créer mon premier programme avec c#,je suis encore débutant je rencontre quelques problèmes au niveau des méthodes d'ajout et de mise à jour en général relatif à une classe
public bool Ajouter()
        {

            //Déclaration de la variable SqlCommand

            SqlCommand Cmd = new SqlCommand();

            try
            {

                {

                    //Affectation des paramètres de la variable SqlCommand

                    Cmd.CommandType = CommandType.Text;

                    Cmd.Connection = ConnectionBaseDonnes.Cn;
                    //Exécution de la requète Ajouter

                    Cmd.CommandText = "INSERT INTO [dbo].[BON_COMMANDE]([num_bc], [cod_clt], [date_bc],[cod_art]) VALUES ('" + numerobc + "', '" + codeclt + "', '" + datebc + "', '" + codearticle + "')";

                    if (Cmd.ExecuteNonQuery)
                    {

                        return true;

                    }

                }

            }

            catch (Exception ex)
            {

                System.Console.WriteLine(ex.Message);

                return false;

            }

            finally
            {

            }


Après l'exécution voici il me génère ces erreurs
Erreur 1 The name 'CommandType' does not exist in the current context D:\Gestion de facturation\code\GCom\Service\Service\clboncommande.cs 91 39 Service
Erreur 2 'Service.ConnectionBaseDonnes' does not contain a definition for 'Cn' D:\Gestion de facturation\code\GCom\Service\Service\clboncommande.cs 93 59 Service
Erreur 3 Cannot convert method group 'ExecuteNonQuery' to non-delegate type 'bool'. Did you intend to invoke the method? D:\Gestion de facturation\code\GCom\Service\Service\clboncommande.cs 98 25 Service


Merci d'avance
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
nhervagault 6069 Messages postés dimanche 13 avril 2003Date d'inscription 15 juillet 2011 Dernière intervention - 6 août 2009 à 13:23
3
Merci
Salut,

Vas faire un tour du coté de site ou sur les coachs MSDN pour comprendre les principes d'ADO.

ExecuteNonQuery permet de faire un Update, Insert, Delete en base
ou procédure stockée.
et retourne un entier qui correspond au nombre de lignes impactées .

attention -1 dans le cas d'annulation ou d'une procédure stockée.

Cf lien

Donc en général on ne teste pas le retour de cette instruction.
Car elle est mise dans un bloc try catch

NB : utilise si possible les requetes paramétrées.

Bon dev.

Merci nhervagault 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 121 internautes ce mois-ci

Commenter la réponse de nhervagault

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.