IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

problème de reader


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par défaut problème de reader
    mon problème est que je vais lire des enregistrements dans la db, j'ouvre donc un reader, je parcour ce reader et je dois inserer ces données dans une table.
    Mais il refuse de faire mon myCommand3.ExecuteNonQuery() parceque j'ai un reader d'ouvert ... mais j'ai besoin de ce reader vu qu'il contient les infos que je dois inserer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Try
                    cnn.Open()
                    myCommand = New SqlCommand("DELETE FROM A_fait_temp", cnn)
                    myCommand.ExecuteNonQuery()
     
                    myCommand2 = New SqlCommand(str_query, cnn)
                    Dim myReader As SqlDataReader = myCommand2.ExecuteReader()
                    myCommand3 = New SqlCommand("", cnn)
                    If myReader.HasRows <> False Then
                        Do While myReader.Read()
     
                            myCommand3.CommandText = "INSERT INTO A_fait_temp (Heures,Nom) VALUES (@h,@n)"
                            With myCommand3.Parameters
                                .Add(New SqlParameter("@h", SqlDbType.Int, 0))
                                .Add(New SqlParameter("@n", SqlDbType.Char, 0))
                            End With
     
                            With myCommand3
                                .Parameters("@h").Value = myReader.GetValue(0)
                                .Parameters("@n").Value = myReader.GetValue(1)
                            End With
     
                            myCommand3.ExecuteNonQuery()
     
                        Loop
                    End If
                Catch ex As Exception
                    px.Text = ex.ToString
                End Try
    voici l'exception

    System.InvalidOperationException: Un DataReader associé à cette commande est déjà ouvert. Il doit d'abord être fermé.
    à System.Data.SqlClient.SqlInternalConnectionTds.ValidateConnectionForExecute(SqlCommand command)
    à System.Data.SqlClient.SqlConnection.ValidateConnectionForExecute(String method, SqlCommand command)
    à System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
    à System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
    à System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
    à WebApplication6.WebForm1.Calcule() dans C:\Users\u028513.AI\Documents\Visual Studio 2008\Projects\WebApplication6\WebApplication6\Occupation.aspx.vb:ligne 111
    Comment faire ?

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Envoie tes données du Reader dans un DataSet ou un DataTable et met le à Nothing avant ta boucle.

  3. #3
    Membre émérite
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Par défaut
    Ou créé ton deuxième command avec une autre instance de connexion...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par défaut
    en faite je suis passé par un tableau ... et ca marche bien comme ca

    Merci pour vos réponse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probléme dans une fonction qui retourne un data reader
    Par saraenim dans le forum Windows Forms
    Réponses: 32
    Dernier message: 28/04/2008, 21h53
  2. Problème avec Adobe Reader.
    Par JavaAcro dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 04/02/2008, 22h05
  3. Problème avec adobe acrobat reader
    Par Rabie de OLEP dans le forum Windows XP
    Réponses: 4
    Dernier message: 24/03/2007, 20h50
  4. Problème avec Adobe acrobat reader
    Par castelm dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 08/03/2007, 21h19
  5. [HTML] Problème lancemant application Acrobat reader
    Par Hoegaarden dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 30/09/2005, 10h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo