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

dsadsadsa 8 Messages postés jeudi 28 août 2008Date d'inscription 18 mars 2009 Dernière intervention - 1 sept. 2008 à 20:48 - Dernière réponse : Arthenius 1183 Messages postés mercredi 21 janvier 2004Date d'inscription 6 septembre 2011 Dernière intervention
- 2 sept. 2008 à 18:44
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.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
xmox667 357 Messages postés jeudi 8 juin 2006Date d'inscription 26 décembre 2011 Dernière intervention - 2 sept. 2008 à 04:32
3
Merci
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+
               
               

Merci xmox667 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de xmox667
dsadsadsa 8 Messages postés jeudi 28 août 2008Date d'inscription 18 mars 2009 Dernière intervention - 2 sept. 2008 à 10:29
0
Merci
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
Commenter la réponse de dsadsadsa
xmox667 357 Messages postés jeudi 8 juin 2006Date d'inscription 26 décembre 2011 Dernière intervention - 2 sept. 2008 à 16:14
0
Merci
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+
Commenter la réponse de xmox667
Arthenius 1183 Messages postés mercredi 21 janvier 2004Date d'inscription 6 septembre 2011 Dernière intervention - 2 sept. 2008 à 18:44
0
Merci
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..."
Commenter la réponse de Arthenius

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.