mattpeufpeuf
Messages postés33Date d'inscriptionlundi 22 octobre 2007StatutMembreDernière intervention18 décembre 2008
-
9 déc. 2008 à 11:18
mattpeufpeuf
Messages postés33Date d'inscriptionlundi 22 octobre 2007StatutMembreDernière intervention18 décembre 2008
-
17 déc. 2008 à 16:11
bonjour, je dois créer un application en c# mais j'arrive pas à créer une connexion avec ma base de données (il faut utiliser odbc ou olebd je pense)
et donc je ne peux pas alimenter ma combo box.
mattpeufpeuf
Messages postés33Date d'inscriptionlundi 22 octobre 2007StatutMembreDernière intervention18 décembre 2008 17 déc. 2008 à 15:47
oui oui ma combo est bien alimenté par select Titre from Revue";
mais ce qui posse problème est ce qui est souligné dans : SELECT RaisonSociale,Adresse,DateFin FROM ABONNEMENT,REVUE WHERE ABONNEMENT.CodeRevue=Revue.Code AND Code.Revue = @code ";
J'ai essayé Revue.Code ou CodeRevue à la place mais caa change rien
cs_bellak
Messages postés136Date d'inscriptionjeudi 27 décembre 2007StatutMembreDernière intervention 5 mai 2011 17 déc. 2008 à 15:55
il te faut des cours de SQL :) , le Combo est alimenté par titre , donc la requete "..... AND Revue.Titre = @titre " ce que je t'ai donné juste un exemple de jointure .
mattpeufpeuf
Messages postés33Date d'inscriptionlundi 22 octobre 2007StatutMembreDernière intervention18 décembre 2008 11 déc. 2008 à 10:52
ok merci beaucoup mais pour la connexion à ma base de donnée? parce que ce que j'ai mis ne fonctionne pas
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();
Conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data source= D:\Users\Matthieu\Documents\Ecole\2tsig\S3\C#\Projet EPOKA\Presse.mdb";
OleDbConnection.Open();
string Sql "select Titre from Revue"; DataSet DTSet new DataSet();
OleDbDataAdapter DTA = new OleDbDataAdapter(Sql, Conn);
try { DTA.Fill(DTSet, "Revue"); }
catch { MessageBox.Show("Une erreur est survenue"); } comboBox.DataSource = DTSet.Tables["Revue"];
comboBox.DisplayMember = "Revue";
comboBox.ValueMember = "Revue";
mes erreurs
Erreur 1 Le nom 'Conn' n'existe pas dans le contexte actuel
Erreur 2 Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique 'System.Data.Common.DbConnection.Open()'
Erreur 3 Le nom 'Conn' n'existe pas dans le contexte actuel
Vous n’avez pas trouvé la réponse que vous recherchez ?
mattpeufpeuf
Messages postés33Date d'inscriptionlundi 22 octobre 2007StatutMembreDernière intervention18 décembre 2008 11 déc. 2008 à 10:52
ok merci beaucoup mais pour la connexion à ma base de donnée? parce que ce que j'ai mis ne fonctionne pas
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();
Conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data source= D:\Users\Matthieu\Documents\Ecole\2tsig\S3\C#\Projet EPOKA\Presse.mdb";
OleDbConnection.Open();
string Sql "select Titre from Revue"; DataSet DTSet new DataSet();
OleDbDataAdapter DTA = new OleDbDataAdapter(Sql, Conn);
try { DTA.Fill(DTSet, "Revue"); }
catch { MessageBox.Show("Une erreur est survenue"); } comboBox.DataSource = DTSet.Tables["Revue"];
comboBox.DisplayMember = "Revue";
comboBox.ValueMember = "Revue";
mes erreurs
Erreur 1 Le nom 'Conn' n'existe pas dans le contexte actuel
Erreur 2 Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique 'System.Data.Common.DbConnection.Open()'
Erreur 3 Le nom 'Conn' n'existe pas dans le contexte actuel
cs_bellak
Messages postés136Date d'inscriptionjeudi 27 décembre 2007StatutMembreDernière intervention 5 mai 2011 12 déc. 2008 à 10:38
Salut ,
System.Data.DataRowView ??.
j'ai pas compris , les items du Combo sont System.Data.DataRowView ou quoi ??.
pour le chemin du BDD il faut mieux utiliser le dossier de l'exe :
string PATH = Application.ExecutablePath;
Path = Path.Substring(0,Path.LastIndexOf("\"));
this.ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + "\\Presse.mdb";
DisplayMember : élément du DataSource qui sera afficher à l'utilisateur
ValueMember : l'élément qui sera retourné au nivo du COMBO.SelectedItem
cs_bellak
Messages postés136Date d'inscriptionjeudi 27 décembre 2007StatutMembreDernière intervention 5 mai 2011 12 déc. 2008 à 10:51
pardon si c'est illisible , j'ai un probleme dans mon navigateur .
puisque vous travailler en mode deconnecté , je vous conseille de fermer a chaque fois la connexion Conn.close();
et pour l'ouvrir il suffit d'ecrire : Conn.open();
mattpeufpeuf
Messages postés33Date d'inscriptionlundi 22 octobre 2007StatutMembreDernière intervention18 décembre 2008 12 déc. 2008 à 11:33
grand merci!! ca fonctionne!!!
encore une question je dois alimenter une datagrid view en raport avec la revue choisi. c'est à dire quand je choisis "le monde" je dois voir tous les abonnés.
comment dois être dans la requete sql where "combox.text=coderevue" pour afficher les données des abonées
cs_bellak
Messages postés136Date d'inscriptionjeudi 27 décembre 2007StatutMembreDernière intervention 5 mai 2011 12 déc. 2008 à 16:46
pour les DataGridView vous utilisez que DataSource et pour la requete si j'ai bien compris la question : string Sql ="SELECT * FROM REVUE WHERE CODE =" + Combo.text;
sinon pour etre plus propre dans ton code vous utilisez les requetes parametrees :
string Sql "SELECT * FROM REVUE WHERE CODE @code ";
OleDbDataAdapter DTA = new OleDbDataAdapter(Sql,conn);
DTA.SelectCommande.Parameters.Add("@code",Combo.text);
juste une remarque , a chaque changement il faut vider le DataSet : DTSet.clear(); ou bien juste la table ça depend des besoins : DTSet.Tables["REVUES"].clear();
cs_bellak
Messages postés136Date d'inscriptionjeudi 27 décembre 2007StatutMembreDernière intervention 5 mai 2011 14 déc. 2008 à 00:07
javascript:Insert_Emoticon('/imgs2/smile_question.gif'); c'est une requete sql ça n'a rien avoir avec c# ,mais ....
"SELECT RaisonSocial,Adresse,DateFin FROM ABONNEMENT,REVUE WHERE ABONNEMENT.CodeRevue=Revue.Code AND Code.Revue = @code ";
mais je vous conseille de prendre des cours Sql .
bon dev javascript:Insert_Emoticon('/imgs2/smile_wink.gif');