我的数据库里有两个不同的标签。一个是所有的俱乐部,一个是所有的球员。表1 idclubs,name,champions,已建立的表2 idclubs,idplayer,nameplayer和一些关于他的更多信息现在我有2个列表框,在第一个列表框中我显示了我拥有的所有俱乐部。但是,如果我在第一个列表框中单击一个俱乐部,第二个列表框将显示该俱乐部的球员,我该怎么做呢。只要我有这个密码;
public List<Spelers> Getspelers(string naam)
{
List<Spelers> Result = new List<Spelers>();
using (MySqlConnection connection = new MySqlConnection(connectionString))
{
connection.Open();
MySqlCommand selectSpelersCommand = new MySqlCommand("select naamspeler from spelers, clubs where clubs.idClubs = @idClubs and spelers.idClubs = @idClubs", connection);
selectSpelersCommand.Parameters.Add(new MySqlParameter("naam", naam));
using (var reader = selectSpelersCommand.ExecuteReader())
{
while (reader.Read())
{
Spelers speler = new Spelers();
speler.IdClubs = reader.GetInt32(0);
speler.IdSpelers = reader.GetInt32(1);
speler.NaamSpeler = reader.GetString(2);
speler.Doelpunten = reader.GetInt32(3);
speler.Gelekaarten = reader.GetInt32(4);
speler.Rodekaarten = reader.GetInt32(5);
Result.Add(speler);
}
}
}
return Result;
}
在我的主代码中:
private void listboxClubs_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
DatabaseManager db = new DatabaseManager();
List<Spelers> speler = db.Getspelers(listboxClubs.SelectedItem.ToString());
listboxspelers.Items.Clear();
foreach (Spelers spelers in speler)
{
listboxspelers.Items.Add(spelers);
}
}
现在,如果我点击第一个框中的一个俱乐部,它会发送字符串。但是我该如何编码呢?这样程序就可以从那家俱乐部中查找idclubs,然后在另一个表中查找,在那里他显示了那家俱乐部的球员。如果有人能帮我这个或链接到其他职位我真的很感激。
1条答案
按热度按时间6ioyuze21#
你的问题是罪魁祸首
通知
也就是说,要让sql只给我naam列的数据,就应该使用*或列名列表,并用“,”分隔
或
更新:
您应该在listbox中添加属性而不是对象
添加此
而不是