Bonjour à tous !
J'ai donc un petit programme qui me permet de générer des devis sous excel..
J'ai une partie où les données du client doivent être entrées, j'arrive bien à récupéré les données pour écrire sur mon fichier excel mais pas dans ma base de données..
Mon code poru initialiser la connection et écrire dans la DB
L'évenement sur lequel j'appel la méthode pour insérer les données dans la DB :
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 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using MySql.Data.MySqlClient; namespace GestionDevis { class SqlConnection { private MySqlConnection connection; // Constructeur public SqlConnection() { this.InitConnexion(); } // Méthode pour initialiser la connexion private void InitConnexion() { // Création de la chaîne de connexion string connectionString = "SERVER=127.0.0.1:3306; DATABASE=GestionDevis; UID=root; PASSWORD="; this.connection = new MySqlConnection(connectionString); } // Méthode pour ajouter un contact public void AddClient() { try { // Ouverture de la connexion SQL this.connection.Open(); // Création d'une commande SQL en fonction de l'objet connection MySqlCommand cmd = this.connection.CreateCommand(); // Requête SQL cmd.CommandText = "INSERT INTO client(IdCli, RSCli, RueCli, VilleCli, CPCli, NumTelCli, MailCli)VALUES(@IdCli, @RSCli, @RueCli, @VilleCli, @CPCLi, @NumTelCli, @MailCli)"; // utilisation de l'objet contact passé en paramètre cmd.Parameters.AddWithValue("@IdCli", Client.c.Id1); cmd.Parameters.AddWithValue("@RSCli", Client.c.RS1); cmd.Parameters.AddWithValue("@RueCli", Client.c.Adresse1); cmd.Parameters.AddWithValue("@VilleCli", Client.c.Ville1); cmd.Parameters.AddWithValue("@RueCli", Client.c.Adresse1); cmd.Parameters.AddWithValue("@CPCli", Client.c.CP1); cmd.Parameters.AddWithValue("@NumTelCli", Client.c.NumTel1); cmd.Parameters.AddWithValue("@MailCli", Client.c.AdresseMail1); // Exécution de la commande SQL cmd.ExecuteNonQuery(); // Fermeture de la connexion this.connection.Close(); } catch { } } } }
Le script de ma DB :
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 private void bt_valider_Click(object sender, EventArgs e) { Fm_Devis f = new Fm_Devis(); f.Show(); this.Hide(); //On récupére les données des textbox Client.c.RS1 = tb_RS.Text; Client.c.Adresse1 = tb_rue.Text; Client.c.Ville1 = tb_ville.Text; Client.c.CP1 = tb_CP.Text; Client.c.NumTel1 = tb_numTel.Text; Client.c.AdresseMail1 = tb_mail.Text; SqlConnection sc = new SqlConnection(); sc.AddClient(); MessageBox.Show("Données client enregistrées !"); }
Merci d'avance pour les réponses que vous allez m'apporter,
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 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; CREATE DATABASE IF NOT EXISTS `GestionDevis` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; USE `GestionDevis`; DROP TABLE IF EXISTS `CLIENT`; CREATE TABLE IF NOT EXISTS `CLIENT` ( `IdCli` int(10), `RSCli` varchar(100), `RueCli` varchar(40) , `VilleCli` varchar(20), `CPCli`INT(10), `NumTelCli`INT(10), `MailCli`varchar(50), PRIMARY KEY (`IdCli`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `CA`; CREATE TABLE IF NOT EXISTS `CA` ( `IdCA` varchar(3), `NomCA` varchar(20), `PnomCA` varchar(40), `NbDevisCA`INT(10), `ChiffreCA`INT(100), PRIMARY KEY (`IdCA`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `DEVIS`; CREATE TABLE IF NOT EXISTS `DEVIS` ( `NumDev` int(7) NOT NULL, `IdCli` int(10), `IdCA` varchar(3), PRIMARY KEY (`NumDev`), FOREIGN KEY (`IdCli`) REFERENCES `CLIENT` (`IdCli`), FOREIGN KEY (`IdCA`) REFERENCES `CA` (`IdCA`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
RythmBreaker
Partager