2 pièce(s) jointe(s)
C# windows forms insérer données
Bonjour,
Je ne vais pas tarder à implorer les dieux de la programmation.. :scarymov:
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:
Pièce jointe 441053
Je sélectionne le bouton connect et on peut voir l’ajout n° 8 pour cet exemple :
Pièce jointe 441057
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 ! :mur:
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 :
Code:
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();
}
}
} |
Y a t'il une âme charitable pour me débloquer de cette situation....:ave:
Cordialement,
Merci