Bonjour,
Je ne vais pas tarder à implorer les dieux de la programmation..
Voici que depuis plusieurs jours je me bats, car je n’arrive pas à mettre à jour ma base de données Access.
J’ai trouvé sur le net ce petit programme et j’essai d'en comprendre le sens…
Voici, à l’ouverture on voit la BDD:
Je sélectionne le bouton connect et on peut voir l’ajout n° 8 pour cet exemple :
Je contrôle dans la BDD et l’ajout c’est bien réalisé…MAIS SURPRISE.
Le fichier Access a été créé en double dans le fichier (bin\debug) et c’est lui qui a la nouvelle ligne…
Par contre le fichier dans mon projet n’a pas bougé !!!
Je recommence l’opération et bien là…misère !
Mon enregistrement a disparu de la base de données…
Que faut-il faire pour garder les enregistrements ?
Est-ce normal pour le double du fichier dans bin\debug .
Voici le code de mon form :
Y a t'il une âme charitable pour me débloquer de cette situation....
Code : 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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97 using System; using System.Data; using System.Windows.Forms; using System.Data.OleDb; namespace MS_Access__mdb__queries___procs___funcs_in_CSharp { public partial class Form1 : Form { OleDbConnection conn; public Form1() { InitializeComponent(); } private void BtnConnect_Click(object sender, EventArgs e) { try { // chemin de fichier DB: var DBPath = Application.StartupPath + "\\Test.mdb"; conn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" + DBPath); conn.Open(); // On insert String essai1 = "2020"; String essai2 = "125"; String my_querry = "INSERT INTO Table_1 (text_col, int_col) VALUES ('" + essai1 + "','" + essai2 + "')"; using (OleDbCommand cmd = new OleDbCommand(my_querry, conn)) { cmd.ExecuteNonQuery(); } // on affiche la nouvelle table using (DataTable dt = new DataTable()) { String my_select = "SELECT * FROM Table_1"; // SELECT * FROM Table_1 using (OleDbDataAdapter adapter = new OleDbDataAdapter(my_select, conn)) { adapter.Fill(dt); } dgvSelect.DataSource = dt; } } catch(Exception ex) { MessageBox.Show("erreur : " + ex); } finally { conn.Close(); } } private void Form1_Load(object sender, EventArgs e) { // ON AFFICHE LA TABLE A L OUVERTURE var DBPath = Application.StartupPath + "\\Test.mdb"; conn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" + DBPath); conn.Open(); using (DataTable dt = new DataTable()) { String my_select = "SELECT * FROM Table_1"; // SELECT * FROM Table_1 using (OleDbDataAdapter adapter = new OleDbDataAdapter(my_select, conn)) { adapter.Fill(dt); } dgvSelect.DataSource = dt; } conn.Close(); } } }
Cordialement,
Merci
Partager