C# - Souci DELETE/UPDATE dans BDD

Résolu
fallonedeJESUS Messages postés 11 Date d'inscription mercredi 17 septembre 2014 Statut Membre Dernière intervention 17 septembre 2014 - Modifié par jordane45 le 17/09/2014 à 11:04
remiki90 Messages postés 132 Date d'inscription samedi 28 juillet 2012 Statut Membre Dernière intervention 27 décembre 2021 - 18 sept. 2014 à 13:22
Bonjour, j'ai grave besoin d'aide, j'arrive bien à enregistrer des données dans la base de données mais je ne peux ni supprimer, ni modifier, merci et aurevoir

<code csharp>
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace QUOTAPRO1
{
public partial class formulaire_personnel : Form
{
const string sqlconnexionstring = @"Data Source=DELL-PC\SQLEXPRESS;Initial Catalog=master;Integrated Security=True";
private void select()
{
string strsql = "select * from PERSO";
try
{
SqlConnection connexionstring = new SqlConnection(sqlconnexionstring);
connexionstring.Open();
SqlCommand fallone= new SqlCommand(strsql, connexionstring);
SqlDataAdapter tclasse =new SqlDataAdapter(fallone);
DataSet dsclasse= new DataSet();
tclasse.Fill(dsclasse,"PERSO");
this.dataGridView1.DataSource = dsclasse.Tables[0];

}
catch(SqlException SQLExc)

{
MessageBox.Show(SQLExc.Message,"sql exception error",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
public formulaire_personnel()
{
InitializeComponent();
select();

}
private void recheche()
{
string strsql = "select * from PERSO where NOM like '%" +txtrech.Text.ToString()+" % '";
try
{
SqlConnection connexionstring = new SqlConnection(sqlconnexionstring);
connexionstring.Open();
SqlCommand fallone = new SqlCommand(strsql, connexionstring);
SqlDataAdapter tclasse = new SqlDataAdapter(fallone);
DataSet dsclasse = new DataSet();
tclasse.Fill(dsclasse, "PERSO");
this.dataGridView1.DataSource = dsclasse.Tables[0];

}
catch (SqlException SQLExc)
{
MessageBox.Show(SQLExc.Message, "sql exception error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void enregistrement()
{
if ((txtnom.Text == "") || (txtprenom.Text == "") || (txtfonction.Text == ""))
MessageBox.Show("veuillez remplir tous les champs!!!", "erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
else
{
string strsql= "insert into Personnel values('"+cbadministration.SelectedValue.ToString()+"','"+cbconsommation.SelectedValue.ToString()+"','"+txtnom.Text.ToString()+"','"+txtprenom.Text.ToString()+"','"+txtfonction.Text.ToString()+"','"+txtsexe.Text.ToString()+"','"+txtadresse.Text.ToString()+"','"+txttelephone.Text.ToString()+"','"+txtlogin.Text.ToString()+"','"+txtmp.Text.ToString()+"')";
SqlConnection connexionstring = new SqlConnection(sqlconnexionstring);
connexionstring.Open();
MessageBox.Show("voulez vous valider ces informations?", "informations de la base de données", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
SqlCommand commande = new SqlCommand(strsql, connexionstring);
commande.ExecuteNonQuery();
MessageBox.Show("personnel enregistrer", "informations de la base de données", MessageBoxButtons.OK, MessageBoxIcon.Information);
connexionstring.Close();

}

}
private void modifié()
{
SqlConnection connect = new SqlConnection(sqlconnexionstring);
connect.Open();
string gesql = " UPDATE personnel set CODEAD = '" + cbadministration.SelectedValue.ToString() + "', CODEC = '" + cbconsommation.SelectedValue.ToString() + "', NOM = '" + txtnom.Text.ToString() + "', PRENOM = '" + txtprenom.Text.ToString() + "', FONCTION = '" + txtfonction.Text.ToString() + "', SEXE = '" + txtsexe.Text.ToString() + "', ADRESSE = '" + txtadresse.Text.ToString() + "', TELEPHONE = '" + txttelephone.Text.ToString() + "', LOGIN = '" + txtlogin.Text.ToString() + "', PASSWORD = '" + txtmp.Text.ToString() + "' where NOM = '"+ txtnom.Text.ToString()+"'";
MessageBox.Show("voulez-vous modifier ses information?", "Question", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
SqlCommand cd = new SqlCommand(gesql, connect);
cd.ExecuteNonQuery();
MessageBox.Show(" Information sur le personnel modifié ","information",MessageBoxButtons.OK,MessageBoxIcon.Information);
connect.Close();

}

private void supprimer()
{
try
{

SqlConnection connexionstring = new SqlConnection(sqlconnexionstring);
connexionstring.Open();
string strsql = " Delete from personnel WHERE NOM = '" + txtnom.Text.ToString() + "'";
SqlCommand commande = new SqlCommand(strsql, connexionstring);
commande.ExecuteNonQuery();
connexionstring.Close();
MessageBox.Show("personnel supprimé", "informations de la base de données", MessageBoxButtons.OK, MessageBoxIcon.Information);

}
catch(SqlException SQLxe)
{
MessageBox.Show(SQLxe.Message,"sql execption error",MessageBoxButtons.OK,MessageBoxIcon.Error);
}

}
private void formulaire_personnel_Load(object sender, EventArgs e)
{
// TODO: cette ligne de code charge les données dans la table 'opi.CONSOMMATION'. Vous pouvez la déplacer ou la supprimer selon vos besoins.
this.cONSOMMATIONTableAdapter1.Fill(this.opi.CONSOMMATION);
// TODO: cette ligne de code charge les données dans la table 'codAd.CONSOMMATION'. Vous pouvez la déplacer ou la supprimer selon vos besoins.
this.cONSOMMATIONTableAdapter.Fill(this.codAd.CONSOMMATION);
// TODO: cette ligne de code charge les données dans la table 'cop.ADMINISTRATEURS'. Vous pouvez la déplacer ou la supprimer selon vos besoins.
this.aDMINISTRATEURSTableAdapter.Fill(this.cop.ADMINISTRATEURS);

}

private void btmodifier_Click(object sender, EventArgs e)
{
modifié();
select();
}

private void btsupprimer_Click(object sender, EventArgs e)
{
supprimer();
select();
}

private void btenregistrement_Click(object sender, EventArgs e)
{
enregistrement();
select();
}

private void label11_Click(object sender, EventArgs e)
{

}

private void label12_Click(object sender, EventArgs e)
{

}

private void txtrech_TextChanged(object sender, EventArgs e)
{
recheche();

}


}
}
</code>

1 réponse

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
Modifié par jordane45 le 17/09/2014 à 11:05
Je ne peux ni supprimer, ni modifier,


Et ça te fait quoi exactement ?
Tu as un message d'erreur ?
Tu as mis des espions sur tes variables pour voir si elles possèdent les bonnes valeurs ?

Sinon essayes d'afficher ta requête.. et regarde si elle est bonne ( teste là en direct dans ta BDD )
   string strsql= "insert into Personnel values('"+cbadministration.SelectedValue.ToString()+"','"+cbconsommation.SelectedValue.ToString()+"','"+txtnom.Text.ToString()+"','"+txtprenom.Text.ToString()+"','"+txtfonction.Text.ToString()+"','"+txtsexe.Text.ToString()+"','"+txtadresse.Text.ToString()+"','"+txttelephone.Text.ToString()+"','"+txtlogin.Text.ToString()+"','"+txtmp.Text.ToString()+"')";
              
                MessageBox.Show(strsql, "REQUETE");
                




PS: le titre de ta question n'est pas vraiment conforme avec la charte du site..... il faut mettre un TITRE qui reflête le souci rencontré.. en l'occurrence.. dans ton cas quelque chose du genre : "Souci d' DELETE/UPDATE dans BDD"
=> J'édite ton titre pour le modifier...



Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
17 sept. 2014 à 11:08
Je viens de relire...
Tu ne parviens pas à SUPPRIMER ni à MODIFIER ...

Donc ce n'est pas ta requête INSERT que tu dois regarder mais bien tes requêtes DELETE et UPDATE...

 string strsql = " Delete from personnel WHERE NOM = '" + txtnom.Text.ToString() + "'";
          
  string gesql = " UPDATE personnel set CODEAD = '" + cbadministration.SelectedValue.ToString() + "', CODEC = '" + cbconsommation.SelectedValue.ToString() + "', NOM = '" + txtnom.Text.ToString() + "', PRENOM = '" + txtprenom.Text.ToString() + "', FONCTION = '" + txtfonction.Text.ToString() + "', SEXE = '" + txtsexe.Text.ToString() + "', ADRESSE = '" + txtadresse.Text.ToString() + "', TELEPHONE = '" + txttelephone.Text.ToString() + "', LOGIN = '" + txtlogin.Text.ToString() + "', PASSWORD = '" + txtmp.Text.ToString() + "' where NOM = '"+ txtnom.Text.ToString()+"'";
       


.... Quand je regarde ta requête INSERT ... déjà je constate que tu as une différence dans le nom de ta table.... Personnel avec un P majuscule... alors que dans tes autres requêtes.. tu y a mis un p minuscule...
Personnel
0
fallonedeJESUS Messages postés 11 Date d'inscription mercredi 17 septembre 2014 Statut Membre Dernière intervention 17 septembre 2014
17 sept. 2014 à 11:09
merci pour ta réponse et désolé je suis nouvelles dans le site mais ca ira et pour la réponse j'arrive bien à enregistrer des données dans ma base de données mais je n'arrive pas à supprimer, ni à modifier, ça dit que les variables de types text ou var char ne sont pas compatibles avec l'opérateur equal to pourtant je voisque la syntaxe est bonne
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
17 sept. 2014 à 11:10
Et tu as lu ma remarque concernant la syntaxe du nom de ta TABLE .... ?
0
fallonedeJESUS Messages postés 11 Date d'inscription mercredi 17 septembre 2014 Statut Membre Dernière intervention 17 septembre 2014
17 sept. 2014 à 11:20
oui? JE VIENT TOUT JUSTE DE modifier, dans la BD c'est en majuscule et je compile il ya toujours la mem erreur
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
17 sept. 2014 à 11:21
Tu as l'erreur sur QUELLE ligne de ton code exactement ?

Et tu peux nous coller le texte EXACT (et complet) de ton message d'erreur ?
0
Rejoignez-nous