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>
A voir également:

1 réponse

jordane45
Messages postés
35765
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 juin 2022
358
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
35765
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 juin 2022
358
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
35765
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 juin 2022
358
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
35765
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
30 juin 2022
358
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