Question Pour Importer et modifier ma BDD. [Résolu]

Signaler
Messages postés
8
Date d'inscription
jeudi 28 août 2008
Statut
Membre
Dernière intervention
18 mars 2009
-
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
-
Bonjour,

Je suis Informaticien en Suisse en 3eme année.

Je dois faire un projet en informatique, pour Appeler une base de donnée Access et MySQL en C#. avec des Commande SQL.

J'ai deja reussi a trouver la commande SQL pour ouvrir la base de données et y entrer des données via des TextBox.

Code :

OleDbConnection DBConnection = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:/temp/bd1.mdb");
            OleDbCommand cmd = new OleDbCommand("INSERT INTO Eleve (Nomclasse, Prenomclasse, Anneenaissance) VALUES ('Kevin','Ducomin, '1990')");
           
            cmd.Connection.Open();
            cmd.ExecuteNonQuery();
            cmd.Connection.Close();

Donc avec ce code j'arrive a ouvrir ma Base de donnée Nommé "bd1.mdb" et a ecrire dedans, Mais ... il me faudrais maintenant les commande SQL, pour supprimer une ligne de ma "bd1.mdb".

Apres j'ai un autre "probleme" ... (encore ... :P) ...

Quand je click sur mon bouton "ajout" pour ajouté le contenu des textbox dans ma base de donnée, je dois avoir ma chaine SQL que j'envoye :

INSERT INTO Eleve (Nomclasse, Prenomclasse, Anneenaissance) VALUES ('Kevin','Ducomin, '1990')"

qui s'affiche dans un Textbox, ou il sera possible de modifier des valeurs, et avec un autre Bouton pour envoyer la nouvelle chaine SQL et les nouvelle donnée dans ma Base de donnée...

J'ai essayer ce Code :

 OleDbConnection DBConnection = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:/temp/bd1.mdb");
                string strName = Convert.ToString(textBox4.Text);
                OleDbCommand cmd = new OleDbCommand(strName + ", DBConnection");
                cmd.Connection.Open();
                cmd.ExecuteNonQuery();
                cmd.Connection.Close();

Mais ca ne veux pas marcher, pourtant ... ca devrais :( ... à mon avis c'est acause des " et ' dans ma chaine qui pose probleme ...

Merci de votre reponse au plus vite, Et Je vous souhaite une bonne soirée.

Au Revoir.

k3ts.

4 réponses

Messages postés
357
Date d'inscription
jeudi 8 juin 2006
Statut
Membre
Dernière intervention
26 décembre 2011
3
Salut,

1) Pour supprimer une ligne la commande est la suivante:
DELETE FROM TABLE WHERE COLONNE = VALEUR
un exemple (supprimer l'éleve Kevin):
DELETE FROM ELEVE WHERE  Nomclasse = "Kevin"
Définition [http://sql.1keydata.com/fr/sql-delete.php [ICI]] : http://sql.1keydata.com/fr/sql-delete.php

2) Pour pouvoir modifier des enregistrements, il faut que la table élève contient un clé primaire.
C'est une colonne qui contient un identifiant unique pour chaque élevé.




Définition [http://sql.1keydata.com/fr/sql-cle-primaire.php [ICI]] : http://sql.1keydata.com/fr/sql-cle-primaire.php



3) Dans cette ligne : OleDbCommand cmd = new OleDbCommand(strName + ", DBConnection");
Tu ne peux pas mettre DBConnection entre parenthèses.

A+
               
               
Messages postés
8
Date d'inscription
jeudi 28 août 2008
Statut
Membre
Dernière intervention
18 mars 2009

ReBonjour,

Merci beaucoup pour votre réponse.

Pour la suppression (DELETE FROM) j'ai réussi à faire que ca supprime un des utilisateur suivant le nom prenom et la date.

Voici mon Code :

OleDbConnection

DBConnection =
new
OleDbConnection(
"Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:/temp/bd1.mdb");

OleDbCommand cmd =
new
OleDbCommand(
"DELETE FROM Eleve WHERE(Nomclasse ='" + tbxNomSupp.Text +
"' AND Prenomclasse = '" + tbxPrenomSupp.Text +
"' AND Anneenaissance = " + tbxAnneeSupp.Text + ")", DBConnection);textBox1.Text "DELETE FROM Eleve WHERE(Nomclasse'" + tbxNomSupp.Text +
"' AND Prenomclasse = '" + tbxPrenomSupp.Text +
"' AND Anneenaissance = " + tbxAnneeSupp.Text +
")";cmd.Connection.Open();

cmd.ExecuteNonQuery();

cmd.Connection.Close();

Merci aussi pour la chaine SQL à envoyer.

Voici le code :

OleDbConnection

DBConnection =
new
OleDbConnection(
"Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:/temp/bd1.mdb");

string strName =
Convert.ToString(textBox1.Text);

OleDbCommand cmd =
new
OleDbCommand((strName), DBConnection);cmd.Connection.Open();

cmd.ExecuteNonQuery();

cmd.Connection.Close();

Merci beaucoup en tous cas.

Maintenant je voulasi savoir si qqun saurais comment faire pour, quand je presse sur un bouton, ca actualise les champs de ma DataGridView.

Merci encore et bonne journée.

K3ts
Messages postés
357
Date d'inscription
jeudi 8 juin 2006
Statut
Membre
Dernière intervention
26 décembre 2011
3
Salut,
Ca pourrait t'aider[http://www.developerfusion.co.uk/show/3801/6/ [Lien]]:
http://www.developerfusion.co.uk/show/3801/6/
Je te conseille d'ajouter un identifiant unique à chaque éleves c'est plus simple pour pouvoir les supprimer et les modifier.
A+
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
regarde mon source http://www.csharpfr.com/code.aspx?ID=27738
ca pourra peut etre t'aider

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."