Bonjour

J'ai parcouru pas mal de discussion mais aucun ne résout mon soucis (Ou Alors je n'arrive pas à comprendre d'où il provient)

J'utilise VS2010 pour le développement et SQLCE pour ma BDD (Intégrer à VS2010)

Je désire faire un update de ma BDD à l'aide d'un bouton mais quand je ferme mon appli, ma BDD locale n'est pas updatée.
En fait, si je ne ferme pas l'appli, toutes mes données sont updatées.

Donc je pense que seulement le dataset est updatée mais pas la BDD.

La connexion à ma BDD se fait bien au lancement de mon appli car si je modifie manuellement directement un champs dans la BDD, je vois bien la modif lors de l'ouverture de mon appli. Mais rien ne se passe dans l'autre sens. Donc, avez vous une idée d'où provient mon soucis svp ?

Voici mon code :
Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
 
Private Sub BDD_Update()
 
        Try
 
            Dim strConnexion As String = "Data Source=|DataDirectory|\Database1.sdf"
            Dim strRequete As String = "SELECT * FROM Personnel ORDER BY ID_Personne"
 
 
            Dim oConnection As New SqlCeConnection(strConnexion)
            oConnection.Open()
 
            ' Chargement de la liste des catégories dans oDataSet
 
            Dim oSqlDataAdapter As New SqlCeDataAdapter(strRequete, strConnexion)
 
 
            Dim oDataSet As New DataSet("Personnel")
            oSqlDataAdapter.Fill(oDataSet, "Personnel")
 
 
            ' Remplissage de la commande InsertCommand
 
            oSqlDataAdapter.InsertCommand = New SqlCeCommand("INSERT INTO Personnel(usine, nom, prenom, fonction, adresse_mail, surnom, Actif, telephone_fixe, telephone_port, photo, Emetteur_de_Devis) Values(@usine,@nom,@prenom,@fonction,@adresse_mail,@surnom,@Actif,@telephone_fixe,@telephone_port,@photo,@Emetteur_de_Devis)", oConnection)
            oSqlDataAdapter.InsertCommand.Parameters.Add("@usine", SqlDbType.Int, 4, "Usine")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@nom", SqlDbType.NVarChar, 100, "nom")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@prenom", SqlDbType.NVarChar, 100, "prenom")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@fonction", SqlDbType.NVarChar, 200, "fonction")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@adresse_mail", SqlDbType.NVarChar, 200, "adresse_mail")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@surnom", SqlDbType.NVarChar, 200, "surnom")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@Actif", SqlDbType.Int, 4, "Actif")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@telephone_fixe", SqlDbType.NVarChar, 40, "telephone_fixe")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@telephone_port", SqlDbType.NVarChar, 40, "telephone_port")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@photo", SqlDbType.Image, 16, "photo")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@Emetteur_de_Devis", SqlDbType.Int, 4, "Emetteur_de_Devis")
 
 
            Dim oDataRow As DataRow
            Dim byteArray As Byte() = {&H0, &H0}
 
            oDataRow = oDataSet.Tables("Personnel").NewRow()
            oDataRow("usine") = 1
            oDataRow("nom") = "TEST"
            oDataRow("prenom") = "TEST"
            oDataRow("fonction") = "TEST"
            oDataRow("adresse_mail") = "TEST"
            oDataRow("surnom") = "TEST"
            oDataRow("Actif") = 1
            oDataRow("telephone_fixe") = "TEST"
            oDataRow("telephone_port") = "TEST"
            oDataRow("photo") = byteArray
            oDataRow("Emetteur_de_Devis") = 1
 
            oDataSet.Tables("Personnel").Rows.Add(oDataRow)
 
            ' Mise à jour de la source de données à partir du DataSet
            oSqlDataAdapter.Update(oDataSet, "Personnel")
 
            ' Rechargement des données de la source mise à jour
            oDataSet.Clear()
            oSqlDataAdapter.Fill(oDataSet, "Personnel")
 
 
            Dim Builder As New SqlCeCommandBuilder(oSqlDataAdapter)
 
            oSqlDataAdapter.UpdateCommand = Builder.GetUpdateCommand
            oSqlDataAdapter.Update(oDataSet, "Personnel")
 
 
            oConnection.Close()
        Catch e As Exception
            MsgBox(e.Message)
        End Try
 
 
    End Sub