ProgressBar lors de l'exécution d'une requette SQL"Insert"

maintenance_info
Messages postés
66
Date d'inscription
lundi 5 juin 2017
Statut
Membre
Dernière intervention
3 janvier 2022
- 17 avril 2021 à 10:22
Whismeril
Messages postés
17337
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
22 mai 2022
- 17 avril 2021 à 12:01
bonjour,
'ai une requête SQl d'insertion.
je veux ajouter un progressBar pour afficher l'etat d'avancement de cette requette.

la requette SQL:
try
            {
                SqlCommand cmd = new SqlCommand("insert into TABLE(a,b,c)Values(select from Table a1,a2,a3)", Connexion.cnx_import);
                Connexion.cnx_import.Open();
                cmd.ExecuteNonQuery();
                Connexion.cnx_import.Close();
 
 
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Source);
                Send_exception("Erreur dans la Fonction:import  OFS " + ex.ToString());
                Connexion.cnx_import.Close();
            }


Merci d'avance

1 réponse

Whismeril
Messages postés
17337
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
22 mai 2022
596
17 avril 2021 à 12:01
Bonjour

à priori ça n'est pas possible, selon ma lecture de l'aide en ligne https://docs.microsoft.com/fr-fr/dotnet/api/system.data.sqlclient.sqlcommand?view=dotnet-plat-ext-5.0 il n'y a ni propriété, ni évènement qui donne une progression de l'exécution de la requête.

Le seul truc que tu peux faire proprement c'est de faire tourner un truc en rond (le sablier, un "serpent" etc....) et l'arrêter quand l'évènement StatementCompleted est déclenché.

Un truc plus sale est d'estimer un temps maximum et de faire progresser ta bare jusqu'à atteindre ce temps.
0