Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Public Class Form1 [ Archives Visual Basic / Bases de données ] (trexor)

mercredi 13 juillet 2005 à 17:02:43 | Public Class Form1

trexor

Bonjour,

Voilà, ca fais quelques jours que je me bat avec ma base de donnée et ADO. Je n'ai aucun pb pour lire ma base de donnée et l'ecrire dans mon dataset, de meme, j'arrive a modifier mon dataset. Par contre, je n'arrive pas a ecrire mon dataset dans ma base de donnée. J'ai fais un resumé de mon code avec une table nommée couple comportant deux champs : Nom couple et Abscisse. J'ai mis un datagridview nommé datagridview1 et un bouton sur le formulaire. Le code marche si on enleve les lignes suivantes (sinon "Erreur de syntaxe dans l'instruction INSERT INTO.") :

liaison = New OleDbDataAdapter("SELECT Couple.[Nom couple], Couple.Abscisse FROM Couple", base)
liaison.InsertCommand = CmdBuild.GetInsertCommand()
liaison.Update(memoire,
"Couple")

Voici le code :

Public Class Form1

'declaration des variables

Dim abs As Double 'variable representant l'abscisse des couples

Dim memoire As New DataSet() 'creation du dataset

Dim NewLigne As DataRow

Dim cnx As OleDbConnection

Dim base As String

Dim liaison As New OleDbDataAdapter

Dim BdProvider = "Microsoft.Jet.Oledb.4.0"

Dim BdPathDirectory = "C:\Documents and Settings\remi\Mes documents\architecture navale\bmauric\soft\test\Copie (3) de toto.mauric"

'"""""""""""""""""""""""""""""""""""""""""

'Recupération des couples dans la base de donnée

'"""""""""""""""""""""""""""""""""""""""""

Private Sub affichageDBCouple(ByVal requete As String, ByVal table As String, ByVal DataGridViewName As DataGridView)

Try

base = "provider=" & BdProvider & "; " & _

"data source= " & BdPathDirectory

'declaration de la connection

cnx = New OleDbConnection(base)

cnx.Open() 'ouverture de la connection

liaison = New OleDbDataAdapter(requete, base)

'charge la table en mémoire

liaison.Fill(memoire, table)

Dim vue As New DataView(memoire.Tables(table))

DataGridViewName.DataSource = vue

cnx.Close()

Catch ex As Exception

MessageBox.Show(ex.Message, Me.Text)

End Try

End Sub

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

affichageDBCouple("SELECT Couple.[Nom couple], Couple.Abscisse FROM Couple", "Couple", DataGridView1)

End Sub

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

Dim CmdBuild As OleDbCommandBuilder

CmdBuild = New OleDb.OleDbCommandBuilder(liaison)

NewLigne = memoire.Tables("Couple").NewRow

NewLigne(0) = "toto"

NewLigne(1) = 3

' Création de la nouvelle ligne

memoire.Tables("Couple").Rows.Add(NewLigne)

liaison = New OleDbDataAdapter("SELECT Couple.[Nom couple], Couple.Abscisse FROM Couple", base)

liaison.InsertCommand = CmdBuild.GetInsertCommand()

liaison.Update(memoire, "Couple")

End Sub

End Class


Pouvez vous m'aider sur cette erreur qui se porte peut être sur ma requete? (pourtant elle est issue du mode ligne d'access ...et j'arrive bien a  recupérer les données...)

En esperant ne pas trop vous déranger,
cordialement,




Cette discussion est classé dans : base, dataset, liaison, memoire, couple


Répondre à ce message

Sujets en rapport avec ce message

Erreur de syntaxe dans l'instruction INSERT INTO. [ par trexor ] Bonjour,Voilà, ca fais quelques jours que je me bat avec ma base de donnée et ADO. Je n'ai aucun pb pour lire ma base de donnée et l'ecrire dans mon d Pb d'uptade de données vers access [ par trexor ] Bonjour, Je réalise une appli Vb.net / base de donnée accès. J'arrive bien a lire mes champs de ma table acces dans mon formulaire a l'aide d'un data Probleme de dataset [ par gougnaf0 ] Tout d'abord bonjour.Je suis en stage de BTS et je bloque depuis qq jours malgré mes recherches sur la msdn de microsoft et les forums.Alors voici mon dataset [ par gougnaf0 ] Bonjour je suis en stage de bts et j'ai developpé ubne appli qui tourne bien. J'arrive a recuperer les données de la base dans mon dataset, a mettre m liaison base de données access (ds une datagrid [ par yg_chou ] bonjour a toutes et tous pour un proget en vb je veu afficher une table de reservations( colones x, y, z ...) dans une datagrid et je rame pour le cod Liaison VB5 Access 2000 [ par mbkmavie ] Bonjour.. Voila mon problemeil ya une application access déposer sur un poste sur le reseau (Suivi des analyses laboratoire)j'ai essayé d'acceder a ce base de donnée en .net [ par lex1111 ] Bonjour, je voulais savoir si il y avait une possibilité de modifier une base de donnée access sans passer par un dataset...Je m'explique avant sur vb Liaison de tables ACCESS en chemin relatif [ par Molenn ] Bonsoir (ou bonjour, c'est selon ^^),Je vais poster mon pb sur VBFrance parce que, si une solution purement ACCESS n'existe pas, j'aimerai bien en tro Ajout de données BDD [ par desperados27 ] Bonjour,J'aimerais enregistrer mes données dans la base de données créée avec Access avec VB 2005Il enregistre les données dans le DataSet mais quand DataReader ou DataSet? (optimisation) [ par Finality ] Bonjour,je suis en train de développer une application, utilisant une base de données. Néanmoins, je me demande si je dois utiliser un DataRead ou un


Nos sponsors

Sondage...

CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,437 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.