Oledb + vb.NET [URGENT]

kamui74 Messages postés 29 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 26 décembre 2006 - 24 juin 2005 à 14:11
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 - 24 juin 2005 à 21:01
Bonjour j'essaye desespérement d'ajouter une entrée dans une base de données Access via un prog en .NET. J'y arrive pas !!! et je ne vois pas pourquoi.....
J'ai droit à une erreur non répertoriée sur l'Update du DataAdapter.

mon code:



Private
Sub Button1_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click

Dim bdName
As
String
Dim MyConnexion
As OleDbConnection =
New OleDbConnection

Dim objCommand
As OleDbCommand

Dim objDataAdapter
As OleDbDataAdapter

Dim objDataSet
As
New DataSet

Dim objDataTable
As DataTable

Dim objCommandBuilder
As OleDbCommandBuilder

Dim objDataRow
As DataRow


bdName = "\\server\Rejets.mdb"
MyConnexion =
New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & bdName)
MyConnexion.Open()
objCommand =
New OleDbCommand("SELECT Date,Id_Equipe FROM Saisies;")
objDataAdapter =
New OleDbDataAdapter(objCommand)
objCommand.Connection = MyConnexion
objDataAdapter.Fill(objDataSet, "Saisies")
objDataTable = objDataSet.Tables("Saisies")
objDataRow = objDataSet.Tables("Saisies").NewRow
objDataRow("Date") = Now()
objDataRow("Id_Equipe") = 3
objDataSet.Tables("Saisies").Rows.Add(objDataRow)
objCommandBuilder =
New OleDbCommandBuilder(objDataAdapter)
objDataAdapter.Update(objDataSet, "Saisies")
objDataSet.Clear()
objDataAdapter.Fill(objDataSet, "Saisies")
objDataTable = objDataSet.Tables("Saisies")

MyConnexion =
Nothing
objCommand =
Nothing
objCommandBuilder =
Nothing
objDataAdapter =
Nothing
objDataRow =
Nothing
objDataSet =
Nothing
objDataTable =
Nothing
End
Sub

Si quelqu'un voit pourquoi ça merde et si il y a plus simple, je suis preneur !!!
Merci !!!

Kamui74

5 réponses

kamui74 Messages postés 29 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 26 décembre 2006
24 juin 2005 à 14:41
J'ai oublié de donner la structure de ma table :

Table Saisies:
Id : NuméroAuto
Date : Date
Id_Equipe : Numérique
0
cs_lim Messages postés 329 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 10 mai 2014 7
24 juin 2005 à 15:45
Salut

Essaye ce code



Dim bdName
As
String
Dim MyConnexion
As OleDbConnection =
New OleDbConnection()

Dim objCommand
As
New OleDbCommand()

Dim objDataAdapter
As
New OleDbDataAdapter()

Dim objDataSet
As
New DataSet()

Dim objDataTable
As
New DataTable("Saisies")


'Vide le dataset de toutes les tables présentes
objDataSet.Tables.Clear()
'Ajoute la table sasies au dataset
objDataSet.Tables.Add(objDataTable)


'Connexion Serveur
bdName = "\\server\Rejets.mdb"
MyConnexion =
New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & bdName)
MyConnexion.Open()


'Mise à jour
'On donne la connexion à l'objet comande
objCommand.Connection = MyConnexion
'Création de la requete d'update
objCommand.CommandText = "UPDATE Saisies SET id_equipe='" & "3" & "', date='" & Now() & "';"
'Affectation de de la requete au dataadapter
objDataAdapter.UpdateCommand = objCommand
'Execution de la requete update
objDataAdapter.UpdateCommand.ExecuteNonQuery()


'Remplit le dataset
objCommand.Connection = MyConnexion
objCommand.CommandText = "SELECT * FROM Saisies;"
objDataAdapter.SelectCommand = objCommand
objDataAdapter.SelectCommand.ExecuteNonQuery()
objDataAdapter.Fill(objDataSet)


MyConnexion.close()

@+
LIM
0
kamui74 Messages postés 29 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 26 décembre 2006
24 juin 2005 à 16:19
merci, mais ça merde au niveau du UpdateCommand.ExecuteNonQuery. Même message d'erreur que dans ce que j'avais fait : "Erreur de Syntaxe dans l'instruction Update"... Avec un Try Catch ça marche mieux pour voir les erreurs ...Oups !;)

@+
0
cs_lim Messages postés 329 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 10 mai 2014 7
24 juin 2005 à 16:28
Désolé mais j'ai pas access (je l'ai pas tester)

essaye d'enlever les ' avant et après 3 et la date. J'ai pas fais gaffe que c'était ud numérique. l'habitude de travailler en chaine de caractère.

@+
LIM
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
24 juin 2005 à 21:01
sous access les dates c #Date()#

http://www.correzeweb.com
http://www.localetv.com
0
Rejoignez-nous