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)
Message édité par cvb le 31-12-2008 à 21:52:27