Probleme InsertCommand et DataAdapter.Update [Résolu]

forum_ma 112 Messages postés samedi 16 octobre 2004Date d'inscription 31 juillet 2006 Dernière intervention - 23 févr. 2006 à 19:40 - Dernière réponse : forum_ma 112 Messages postés samedi 16 octobre 2004Date d'inscription 31 juillet 2006 Dernière intervention
- 24 févr. 2006 à 15:09
Bonjour j'ai un probleme avec un insertCommand.

Voici ma fonction :


Public
Sub saveDataAdd(
ByVal value
As
String,
ByVal theDate
As DateTime,
ByVal group
As
Integer)

Dim bufferDate
As
New DateTime(theDate.Year, theDate.Month, theDate.Day)

définition de la requete
Dim cmdInsert
As
New OleDb.OleDbCommand("INSERT INTO TblDate ( [Date], Groupe, Texte ) VALUES (#" & bufferDate & "#, '" & group & "', '" & value & "')", ObjetConnection)

ObjetDataAdapter.InsertCommand = cmdInsert

'Faire l'ajout dans la BD
Try
ObjetDataAdapter.Update(ObjetDataSet, "tblDate")

Catch ex
As Exception
MsgBox("ERREUR", MsgBoxStyle.Critical)

End
Try
ObjetDataSet.Clear()
fillDataSet()

End
Sub

Mon probleme est que mon ca ne se met pas a jour... Je fais la meme chose avec une commande Delete et Update et tous va bien... Mais avec le Insert ya rien... Lorsque sa passe dans le try ya pas d'erreur, mais requete SQL est bonne (Je l'ai tester dans Access). La fonction fillDataSet() marche aussi, en faite ce que je fais c'est que apres avoir updater mon adapter, je vide mon dateset pour le réemplir avec les données trier...

Je ne sais pas si vous pouvez m'aider mais j'aimerais sa!!!
Afficher la suite 

2 réponses

Meilleure réponse
forum_ma 112 Messages postés samedi 16 octobre 2004Date d'inscription 31 juillet 2006 Dernière intervention - 24 févr. 2006 à 15:09
3
Merci
Finalement j'ai réussis comme sa :



Dim ObjetCommandBuilder
As OleDbCommandBuilder

'creation de la commande d'ajout
Dim bufferDate
As
New DateTime(theDate.Year, theDate.Month, theDate.Day)

'définition de la requete
Try
ObjetConnection.Open()

Dim cmdInsert
As
New OleDb.OleDbCommand("INSERT INTO TblDate [Date], Groupe, Texte ) VALUES (#" & bufferDate.Year & "-" & bufferDate.Month & "-" & bufferDate.Day & "#, '" & group & "', '" & value & "')", ObjetConnection)

'Faire l'ajout dans la BD
Dim count
As
Integer
count = cmdInsert.ExecuteNonQuery
ObjetConnection.Close()
ObjetDataAdapter.Update(ObjetDataSet, "tblDate")

Catch ex
As Exception
MsgBox("ERREUR ADD", MsgBoxStyle.Critical)

End
Try
'Mettre a jour le DataSet
ObjetDataSet.Clear()
fillDataSet()

Sa marche et la vitesse est pas si pire... je ne suis pas sur que c'est le meilleur code je pouvais faire mais pour l'instant sa marche c'est le principal!!

Merci pour l'aide!!!

Merci forum_ma 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 117 internautes ce mois-ci

aydendeliadon 20 Messages postés lundi 5 décembre 2005Date d'inscription 20 avril 2006 Dernière intervention - 24 févr. 2006 à 10:43
0
Merci
il faut appliquer un objet de construction de commande ligne en rouge. N'oublie pas de le déclarer avant.

'Faire l'ajout dans la BD
Try
objetcommandbuilder= new oledbcommandbuilder(objetdataadapter)
ObjetDataAdapter.Update(ObjetDataSet, "tblDate")
Catch ex As Exception
MsgBox("ERREUR", MsgBoxStyle.Critical)
End
Try

Cà devrait marcher comme çà, en tout cas chez moi çà fonctionne.

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.