bassemkhouildi
Messages postés2Date d'inscriptionmardi 6 juillet 2010StatutMembreDernière intervention 7 septembre 2010
-
7 sept. 2010 à 16:24
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024
-
7 sept. 2010 à 16:39
salut tout le monde j'ai un problem avec l'ajout d'une enregistrement en access,Mais j'ai un erreur en INSERT INTO ce que m'etonne que se code fait lèajout avant hier mais avec lèajout des autre fome je sais kesk se passe merci de vous m'aider
VOILA LE CODE
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports Microsoft.VisualBasic
Public Class Form1
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
End Sub
Private Sub ComboBox4_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox4.SelectedIndexChanged
If ComboBox4.SelectedItem = "Ordinateur" Then
End Sub
'Déclaration de la variable pour la connection
Private cnx As OleDbConnection
'Déclaration de la variable pour la commande
Private cmd As OleDbCommand
'Déclaration de la variable pour le dataadapter
Private dta As OleDbdataAdapter
'Déclaration de la variable pour le dataset
Private dts As New DataSet
'Déclaration de la variable pour la requête
Private sql As String
'Déclaration de la variable pour la datatable
Private dtt As DataTable
'Déclaration de la variable pour le datarow
Private dtr As DataRow
'Déclaration de la variable pour le Nº de l'enregistrement
Private rownum As Integer
'Déclaration de la variable pour la connectionstring
Private cnxstr As String
'Déclaration de la variable pour le commandbuilder
Private cmdb As OleDbCommandBuilder
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
'Ouverture de la connexion (à partir du répertoire de l'application) sur la même ligne
cnxstr "provider microsoft.jet.oledb.4.0 ; data source = " & Application.StartupPath & "\Ma_Base.mdb;"
cnx = New OleDbConnection
cnx.ConnectionString = cnxstr
cnx.Open()
Catch ex As Exception
MessageBox.Show("error" & ex.Message)
End Try
sql = "select fiche.* from fiche"
cmd = New OleDbCommand(sql)
dta = New OleDbDataAdapter(cmd)
cmd.Connection() = cnx
dta.Fill(dts, "fiche")
dtt = dts.Tables("fiche")
End Sub
Private Sub ComboBox4_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox4.SelectedValueChanged
End Sub
Private Sub ComboBox7_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox7.SelectedIndexChanged
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024159 7 sept. 2010 à 16:39
Bonjour,
Avec la coloration syntaxique, ce serait nettement plus clair ...
Sinon, Tu ouvre une connexion par form ?
Ensuite, dans cette sub :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'crátion d'une nouvelle ligne avec les données des textbox
dtr = dtt.NewRow()
dtr("champ1") = Me.ComboBox4.Text
dtr("champ2") = Me.ComboBox5.Text
dtr("champ3") = Me.TextBox3.Text
dtr("champ4") = Me.TextBox4.Text
dtr("champ5") = Me.TextBox1.Text
dtr("champ6") = Me.TextBox7.Text
dtr("champ7") = Me.TextBox2.Text
dtr("champ8") = Me.TextBox5.Text
dtr("champ9") = Me.TextBox6.Text
dtr("champ10") = Me.ComboBox2.SelectedItem
dtr("champ11") = Me.ComboBox1.SelectedItem
dtr("champ12") = Me.ComboBox3.SelectedItem
dtr("champ13") = Me.ComboBox7.SelectedItem
dtr("champ14") = Me.ComboBox6.SelectedItem
'ajout de la ligne dans le DataSet
dts.Tables("fiche").Rows.Add(dtr)
'création et exécution du commandbuilder pour mettre à jour le DataAdapter
cmdb = New OleDbCommandBuilder(dta)
'mise à jour des données du dataadapter(dta)à partir du commandbuilder (cmdb)
dtt = dts.Tables("fiche")
dta.Update(dts, "fiche")
'on vide le dataset pour le recréer avec les nouvelles données
dts.Clear()
dta.Fill(dts, "fiche")
dts.AcceptChanges()
MsgBox("Fiche ajoutée")
End Sub