maxpag
Messages postés8Date d'inscriptionjeudi 7 juillet 2005StatutMembreDernière intervention 8 avril 2010
-
11 avril 2009 à 20:40
maxpag
Messages postés8Date d'inscriptionjeudi 7 juillet 2005StatutMembreDernière intervention 8 avril 2010
-
12 avril 2009 à 11:11
Bonjour,
Je suis face a un problème de taille (en tous cas pour moi -_-), il n'y a pas moyen de remplir le DataSet qui servira à remplir le dataGridView.
J'utilise OleDbDataAdapter, puis adapter.Fill(DataSet, "Musiques"); , mais il me retourne cette erreur :
L'exception OleDbException n'a pas été gérée :
Aucune valeur donnée pour un ou plusieurs des paramètres requis.
Voici mon code dans sa totalité (la partie concernée) :
// Initialisation du périphérique pour PFL
if(Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_LATENCY, this.Handle, null))
{
// On fait rien pour le moment
}
else
{
// On affiche un MSG d'erreur
MessageBox.Show(this, "Erreur lors de l'initialisation de BASS", "Erreur !", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
// On charge la liste des catégorie
OleDbConnection Myconnection = null;
OleDbDataReader dbReader = null;
Myconnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; User Id=; Password=; Data Source=BDD.rsdb");
dataGridView1.DataSource = null;
// On crée un DataSet
DataSet ds = new DataSet();
OleDbCommand command = Myconnection.CreateCommand();
// On ouvre la connexion
Myconnection.Open();
OleDbCommand cmd = Myconnection.CreateCommand();
cmd.CommandText = "SELECT Nom FROM Catégories";
dbReader = cmd.ExecuteReader();
string Nom;
// On complète la comboBox avec le nom des catégorie
while(dbReader.Read())
{
Nom = (string)dbReader.GetValue(0);
comboBox1.Items.Add(Nom);
}
// On sélectionne le premier Item
comboBox1.SelectedIndex = 0;
// On ferme le dbReader
dbReader.Close();
// La requête en string
String connect = (@"Provider=Microsoft.Jet.OLEDB.4.0; User Id=; Password=; Data Source=BDD.rsdb");String lacmd ("SELECT Artiste, Titre FROM Musiques WHERE Catégories '" + comboBox1.SelectedItem + "'");
OleDbDataAdapter adapter = new OleDbDataAdapter(lacmd, connect);
MessageBox.Show(Convert.ToString(adapter));
adapter.Fill(ds, "Musiques");
// On ferme la connexion
Myconnection.Close();
// On rempli le dataGridView
dataGridView1.DataSource = ds.Tables[0];
}
Il est possible aussi que l'erreur provienne de la base de données
ACCESS, donc je la met enligne et à votre disposition à cette adresse : http://www.fhtools.com/BDD.rsdb.mdb
maxpag
Messages postés8Date d'inscriptionjeudi 7 juillet 2005StatutMembreDernière intervention 8 avril 2010 12 avril 2009 à 11:11
J'ai refais toutes la structure de ma base de données et refait mes requêtes et cela a fonctionné, je ne sais pas ce qui ne fonctionnait pas, mais bon ce qui compte c'est que cela soit résolu.