saku_
Messages postés4Date d'inscriptiondimanche 28 septembre 2003StatutMembreDernière intervention16 avril 2004
-
16 avril 2004 à 12:16
Arthenius
Messages postés1182Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 6 septembre 2011
-
19 avril 2004 à 15:09
j'ai une base de donnée de ce type
-------------------------------------------
numele / nomele / preele / datenai /
-------------------------------------------
1 tata tutu 12121985
-------------------------------------------
2 dupont jean 28111985
------------------------------------ -------
3 dupont paul 02021953
-------------------------------------------
4 test papa 03121985
-------------------------------------------
j'ai réalisé un petit programme en mode console dont le principe est de faire des mofifications , des ajouts et des suppressions de la base de données.
Mon souci est celui de la suppression.
-------L' objectif dans l'application :--------------------
je demande quelle nom d'eleve vous voulez supprimer?
je tape dupont
A ce moment là on affiche tout les noms correspondant à dupont suivi de leur prenom.( soit dupont jean et dupont paul)
Et enfin je choisi maintenant le prenom à suppprimer
(soit paul)
la suppression s'est effectué
Voila ce que je souhaite faire.
--------- Probleme de suppression---------------------
Je n'arrive pas à le réaliser : voici mon code:
private string sNom;
private string sPrenom;
private string sDateNaissance;
private string sid;
private bool bverif;
class personne
{
public bool Verif_Supp()
{
personne unepersonne = new personne(); maSqlCmd.CommandText "Select * From eleve where Nomele '"+sNom+"'";
monSqlDR = maSqlCmd.ExecuteReader();
while (monSqlDR.Read())
{
if ((monSqlDR.GetString(1) == sNom))
{
bverif=true;
Console.WriteLine("Il y a plusieurs fois le même nom");
Console.WriteLine("Choisissez un prénom");
unePersonne.Prenom = Console.ReadLine();
maSqlCmd.CommandText="Delete from eleve where Nomele= '"+sPrenom+"'";
maSqlCmd.ExecuteNonQuery();
break;
}
else
{
bverif=false;
}
}
monSqlDR.Close();
return bverif;
}
public void Supprimer()
{
maSqlCnx.ConnectionString="server=LOCALHOST;database=ecole;user id=sa;password=";
maSqlCnx.Open();
maSqlCmd.Connection=maSqlCnx;
Verif_Supp();
if ( bverif == false)
{
maSqlCmd.CommandText="Delete from eleve where Nomele= '"+sNom+"'";
maSqlCmd.ExecuteNonQuery();
}
maSqlCnx.Close(); // fermeture
}
saku_
Messages postés4Date d'inscriptiondimanche 28 septembre 2003StatutMembreDernière intervention16 avril 2004 16 avril 2004 à 14:24
L'objectif: c d'abord de faire un critere de selection en fonction du nom
d'ou maSqlCmd.CommandText "Select * From eleve where Nomele '"+sNom+"'";
ensuite s'il existe des eleve portant le meme nom alors la suppression par le prenom ensuite
d'ou
maSqlCmd.CommandText="Delete from eleve where Nomele= '"+sPrenom+"'";
Je pense que le pb vient en fait : fonction verif_suppr
il faut que je lise toute les lignes de ma table dans la base de donnée qui possede le nom ='dupont'
Or ce que j'ai fait : c'est lorsque je saisie le nom='dupont' je verifie s'il existe ce nom dans ma base ( ce qui est correct je pense)
mais je n'arrive a faire le code qui permet de faire la lecture de chaque ligne de la base de donnée qui porte le meme nom. Defacon à ce que je puisse recuperer toute les eleves portant le nom ='dupont' et de les afficher
je ne sais pas si j'ai été clair. :)
Merci pour m'avoir repondu :)