Accueil > Forum > > > > Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?
Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?
mercredi 17 décembre 2008 à 13:38:46 |
Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?

cvbperso
|
Bonjour, Je travaille sur une base Oracle ! Je n'ai pas de problème pour récupèrer les données. En ce qui concerne l'insertion, la mise à jour, j'ai quelques soucis ! Démarche ==> j'arrive à insérer les données. Je supprime les données manuellement et je refais l'action. Quand je veux réinsérer ces mêmes données, ça ne fonctionne pas et j'ai un message d'erreur, au bout de quelques secondes ! Voici mon erreur : | Le CLR n'a pas pu effectuer de transition du contexte COM 0x10df448 au contexte COM 0x10df5b8 pendant 60 secondes. Le thread qui possède le contexte/cloisonnement de destination est probablement en train d'attendre ou de traiter une opération très longue sans pompage des messages Windows. Cette situation a généralement des effets négatifs sur les performances et peut parfois entraîner le blocage de l'application ou une utilisation ininterrompue de la mémoire. Pour éviter ce problème, tous les threads STA (Single Threaded Apartment) doivent utiliser des primitives d'attente de pompage (par exemple CoWaitForMultipleHandles) et pomper de manière régulière les messages lors des opérations qui sont longues à s'exécuter. | et voici mon code : Code : - Dim oradb As String = "Data Source=(DESCRIPTION=(ADDRESS_LIST=" _
- + "(ADDRESS=(PROTOCOL=TCP)(HOST=172.30.32.92)(PORT=1521)))" _
- + "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCL)));" _
- + "User Id=xxxxx;Password=xxxxx;"
- Dim conn As New OracleConnection(Me.oradb)
- Dim myOracleTransaction As OracleTransaction = conn.BeginTransaction()
- Dim myOracleCommand As OracleCommand = conn.CreateCommand()
- myOracleCommand.CommandText = "INSERT INTO CATEGORIES (CODE_CATEGORIE,NOM_CATEGORIE,DESCRIPTION) VALUES(10,'toto','titi')"
- myOracleCommand.ExecuteNonQuery()
- myOracleTransaction.Commit()
- conn.Close()
| Avez-vous une idée de l'origine de l'erreur, svp ? D'avance merci pour les réponses Cvb
ps: je travaille sous Visual Studio 2008 (Framework 3.5)
|
|
mercredi 17 décembre 2008 à 15:46:13 |
Re : Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?

thome76
|
Salut, Je voudrais savoir le résultat au niveau base? Quand il exécute ton code et où est la ligne de code en erreur précisément? T'as vérifié que ta les bon nom de champs et le bon nom de table dans ton code? T'as vérifié que les paramètres de connection (dans ton code) sont bien les mêmes que dans le tns names?
|
|
mercredi 17 décembre 2008 à 16:15:02 |
Re : Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?

cvbperso
|
Bonjour,
Oui j'ai bien vérifier tout cela, la requête est correct ! Plusieurs choses se produise au niveau de la base de donnée.
1- Quand j'exécute la première fois le code, les données sont écrites dans la base dans aucun problème, le commit s'exécute bien....
2- Une fois que je supprime les données à la main à partir de "Oracle SQL Devellopper" et que je réexecute le code afin de renvoyer la requête INSERT, c'est à ce moment là que mon soucis intervient ! Il faut que j'execute le Commit depuis "Oracle SQL Devellopper" pour que les données envoyé depuis le programme apparaissent !
Si je n'execut pas se COMMIT, le programme 30 secondes plutard ! Le CLR n'a pas pu effectuer de transition du contexte COM 0x10df448 au contexte COM 0x10df5b8 pendant 60 secondes. Le thread qui possède le contexte/cloisonnement de destination est probablement en train d'attendre ou de traiter une opération très longue sans pompage des messages Windows. Cette situation a généralement des effets négatifs sur les performances et peut parfois entraîner le blocage de l'application ou une utilisation ininterrompue de la mémoire. Pour éviter ce problème, tous les threads STA (Single Threaded Apartment) doivent utiliser des primitives d'attente de pompage (par exemple CoWaitForMultipleHandles) et pomper de manière régulière les messages lors des opérations qui sont longues à s'exécuter. Je me pose la question de savoir s'il n'y a pas une histoire de Buffer, ou quelques chose comme cela ! je ne comprends pas le problème. Je travaille sous Oracle 10g
D'avance merci :) ++
|
|
mercredi 17 décembre 2008 à 17:29:36 |
Re : Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?

cvbperso
|
Bonsoir,
J'ai trouvé l'erreur ! En fait j'avais "Sql Devellopper" d'ouvert en même temps que j'executé mon code ! Il s'avère (pour une raison inconnue) que le logiciel prenait le pas sur mon programme ! Il est vrai que je m'authentifier deux fois sur la base avec des identifiants identiques...
En fermant "Sql Devellopper", tout est rentré dans l'ordre, je peux insérer les données....:)
D'avance merci de vous être penché sur mon soucis :) Bonne soirée :) ++
|
|
mercredi 17 décembre 2008 à 17:50:57 |
Re : Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?

thome76
|
juste une question il te retourne combien ExecuteNonQuery() ?
Quand tu fais une execution de requete essaie de faire un try catch ça peut aider dans ces cas là! surtout que les requetes sql avec les paramètre de connection sont des endroits sensibles dans les programmes.... Mais si quelqu'un d'autres a une idée
|
|
jeudi 5 février 2009 à 09:31:00 |
Re : Ma requête ne fonctionne qu'à moitié ! avez-vous une idée ?

GarnierFlorian
|
Salut, Et bien je suis de ton avis thome76, il serait intéressant d'utiliser un try catch, qui permet de gérer les exceptions et d'afficher un message désignant cette exception. Il est très important de prévoir la récupération des erreurs, cela permet d'éviter que l'application ne plante. Try 'Ici tu tape tout ton code
Catch ex As Exception MessageBox.Show(ex.Message) 'Retourne un message d'erreur si existant. End Try
Peace 
|
|
Cette discussion est classée dans : données, erreur, fonctionne, idée, conn
Répondre à ce message
Sujets en rapport avec ce message
Erreur d'exécution '-214747848 (80010108)' [ par DenoHATE ]
J'ai commencé un programme qui utilise les TextBox, ComboBox et CommandButton du controle FORM 2.0 et tout fonctionne sauf une page (qui n'a rien de d
base de données [ par laure ]
Bonjour,j'ai deux problemes :j'ai crée une base de données sous access2000. Je l'ai liée à une page html par les pages asp. donc j'ai crée une source
erreur 429 [ par Rom ]
Je dois installer un prog que j'ai fais en VB5 sur le poste d'une employée. Le programme fonctionne correctement sur tous les postes essayés, l'instal
messages d'erreur 3704,3705,3706 [ par omega ]
J'ai créé une application qui gère une base de données. j'ai utilisé l'utilitaire d'empactage de vb6 pour creer les fichiers d'installations mais lors
erreur de connexion bd! URGENT!! [ par glopglop ]
Salut!J'utilise une base de données Access qui contient des comptes urilisateur je dois par concequant entre un uid et un mdp pour me connecter à la b
URGENT Erreur au démarrage !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! [ par Evangelion ]
J'ai crée une appli de base de données avec un programme d'installation. Après bien des déboires (je passerais les plantages de l'assistant d'empaquet
erreur entre listbox et base de données ??? [ par cyberlulu ]
Salut !Sur ma form, j'ai un listbox et un data. A l'aide d'un textbox, je remplis le listbox et le texte que je rentre s'ajoute à une base de données
OLE : Erreur pendant l'envoi des données [ par elchico ]
Bonjour,Si je poste ce message aujourd'hui c'est en désespoire de cause. J'ai tout essayé : support microsoft, technet, aide, recherche sur le net etc
assistant feuille de données et msg d'erreur [ par gplog ]
Mr_toto Salut, J'y connait rien en base de donnée alors j'ai créer avec l'assitant une feuille de données. ça fonctionne tres bien, les donné
Message d'erreur "Le fournisseur ou l'objet ne prend pas en charge cette méthode" [ par emerde ]
Bonjour,Je veux tout simplement ajouter un nouvel enrégistrement à ma table DEPARTEMENT qui comporte les champs NoDept et NomDept avec l'objet Record
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|