Coucou,
désolé pour le titre du post, je savais pas trop quoi mettre
Voili voilou, on commencec a me connaitre dans le coin mais j'apprend !!
Lors d'un appel a une fonction par click sur mon calendrier, je voudrai supprimer les lignes d'une table et les remplacer par d'autre
Alors voici ce que j'ai fait :
j'appel ma fonction en passant en parametre ma date selectionnée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 private void Calendar1_SelectionChanged(object sender, System.EventArgs e) { System.DateTime maDate = Calendar1.SelectedDate; myComponent.vehiculesDisponnible(maDate); IdDate.Text = Calendar1.SelectedDate.ToShortDateString(); }
Normalement je l'ai aps trop mal commenté, mais j'vais en rajouter un peu
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 public void vehiculesDisponnible(System.DateTime maDate) { string strConnexion = "workstation id=SSAPST99;packet size=4096;user id=admdb01;data source=\"SOCCIB6\\TES" + "T\";persist security info=False;initial catalog=master;password=admdb-01"; //supprime toute les lignes de la table Vehicules disponnibles string deleteRequete = "DELETE FROM TableVD"; //Selectionne les lignes de la Table Vehicule où la Date selectionnée //dans le calendrier ne correspond pas au reservation enregistrées. string strRequete = "SELECT * FROM TableV WHERE Date != '" +maDate+ "'"; try { SqlConnection oConnection = new SqlConnection(strConnexion); //Commande de suppression SqlCommand delCommand = new SqlCommand(deleteRequete,oConnection); //Commande de Lecture des lignes de Véhicules Disponnibles SqlCommand lectureCommand = new SqlCommand(strRequete,oConnection); oConnection.Open(); delCommand.ExecuteNonQuery(); SqlDataReader monLecteur = lectureCommand.ExecuteReader(); //Lecture sur la base de véhicules dont la reservation n'est pas enregistrée while(monLecteur.Read()) { string monVehicule = monLecteur["NomV"].ToString(); //requete d'insertion des véhicules disponnibles dans la table TableVD string strRequete2 = "INSERT INTO TableVD VALUES ('" +monVehicule+ "')"; SqlCommand maCommand = new SqlCommand(strRequete2,oConnection); maCommand.ExecuteNonQuery(); } oConnection.Close(); } catch (Exception e) { Console.WriteLine("L'erreur suivante a été rencontrée :" + e.Message); } }
Je supprime bien mes lignes, ca ca marche !
Mais apres, je lit les lignes uniquement où mon champ "date" diffère de celle selectionnée... jusque la j'ai bon je crois ?
Pour chaque ligne lue, je voudrai inserer dans une autre table (TableVD) les nom (NomV) de mes véhicules.
Alors j'ai fait
Mais rien ne s'incere.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 while(monLecteur.Read()) { string monVehicule = monLecteur["NomV"].ToString(); //requete d'insertion des véhicules disponnibles dans la table TableVD string strRequete2 = "INSERT INTO TableVD VALUES ('" +monVehicule+ "')"; SqlCommand maCommand = new SqlCommand(strRequete2,oConnection); maCommand.ExecuteNonQuery(); }
Pourtant en testant, n'étant pas totalement stupide, j'ai cliqué sur une date existant dans mes reservation et une autre pour voir...
Alors peut etre que je ne peut pas inserer dans ma boucle While ?
Si c'est ca, dite moi comment je pourrai m'en sortir
THX ALL
Erwan
Partager