Salut !!!
Je suis en train de réaliser une petite application dont le but est de gérer les eleves.
Ma base de donnée est celle-ci :
Eleve(NumEle,NomEle,PreEle,DatNai)
Classe(NumCla,NomCla)
Appartenir(#NumEle,#NumCla,Annee)
voila un début de menu:
- Lister les classes
- Ajouter les classes
- Recherche de la classe
- Ajouter Eleve(Nom,Prenom,DateNaissance) de la classe
saisie
Voila le principe de l'application.
J'ai un souci c'est que je n'arrive pas inserer les valeurs dans la table appartenir correspondant au identifiant NumEle, et NumCla
ex: 1 / info
1/ toto/tata/19801212
appartenir (1,1,2000) -> cette insertion je n'arrive pas à l'effectuer
Voila comment j'ai procédé:
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 Console.WriteLine("Entrer un nom de l'eleve"); unePersonne.Nom = Console.ReadLine(); Console.Write("Quel est le prénom ?"); unePersonne.Prenom = Console.ReadLine(); Console.Write("Quelle est sa date de naissance aaaammjj ?"); unePersonne.DateNaissance = Convert.ToString(Console.ReadLine()); maSqlCmd.CommandText="Insert into Eleve(NOMELE,PREELE,DATNAIELE)values('"+unePersonne.Nom+"','"+unePersonne.Prenom+"','"+unePersonne.DateNaissance+"')"; maSqlCmd.ExecuteNonQuery(); CmdNumEle.CommandText="Select max(NumEle)from Eleve"; DRNumEle = CmdNumEle.ExecuteReader(); while(DRNumEle.Read()){ Console.WriteLine("numero id :"+DRNumEle.GetInt32(0).ToString()); } DRNumEle.Close(); CmdNumCla.CommandText="Select NumCla from Classe where NomCla='"+sNomCla+"'"; DRNumCla = CmdNumCla.ExecuteReader(); while(DRNumCla.Read()){ Console.WriteLine("numero id :"+DRNumCla.GetInt32(0).ToString()); } DRNumCla.Close(); Console.WriteLine("Entrer l'année d'etude "); sAnnee = Console.ReadLine(); maSqlCmd2.CommandText="Insert into appartenir(numcla,numele,annee)values('"+DRNumCla+"','"+DRNumEle+"','"+sAnnee+"')"; maSqlCmd2.ExecuteNonQuery();
J'obtiens une erreur dont je n'arrive pas a comprendre d'ou cela peut provenir
Erreur de syntaxe lors de la conversion de la valeur varchar 'System.Data.SqlClient.SqlDataReader' vers une colonne de type de données int.
L'application s'interrompt une fois que j'insere l'année de son etude
l'insertion se fait correctement pour la table classe et eleve , en revanche la table appartenir , je n'y arrive pas.
J'espere que j'ai été clair.
Merci d'avance pour votre aide
Stardeus
Partager