[英]How to retrieve all the column values(distinct had been applied) into listbox by using sql query?
这可能很简单,而且之前已经回答过,但是我不知道如何寻找确切的方法。
->我的表单中有两个列表框。 一种是产品名称,另一种是公司名称。
->在页面加载时, Listbox1
将从database(Product name)
检索值。 从listbox1
选择项目后,应在listbox2
获取相应的公司名称。
例如 :数据库名称是Motor
这是我的表格,名称为“ Register”,其中包含两列,
Productname Companyname
Car Bmw
Bike Bmw
Car Honda
Bike Honda
我的问题是
我将产品名称详细信息检索到listbox1
,这是我不想重复相同的项目,所以我像这样使用Distinct,
Select Distinct Productname from Register
现在,如果我从列表框1中选择汽车,则相应的公司名称应显示在列表框2中。 但是得到的只是本田车上的本田而没有得到宝马。
Sqlcommand cmd=new Sqlcommand("Select Companyname from Register where Productname='"+listbox1.selecteditem+"'",con);
Sqldatareader dr=cmd.Executereader();
while(dr.Read())
{
string a=dr.GetString(0);
listbox2.items.add(a);
}
这是用于将值检索到listbox2中的查询。 我使用datareader读取并从数据库中获取值。
我不知道该怎么做。 希望不要让您感到困惑,因此任何帮助都会对我有所帮助,并在此先感谢您。
你试过了吗
Select Companyname from Register
where Productname='"+listbox1.GetItemText(listbox1.SelectedItem)+"'
尝试这个..
Sqlcommand cmd=new Sqlcommand("Select Companyname from Register where Productname='"+listbox1.selecteditem.toString()+"'",con);
Sqldatareader dr=cmd.Executereader();
listbox2.items.clear();
while(dr.Read())
{
string a=dr['Companyname'].toString();
listbox2.items.add(a);
}
ur使用字符串a = dr.GetString(0); listbox2.items.add(a);
这将只从表中获取第一行。
使用字符串a = dr [“ companyname”]。toString(); listbox2.items.add(a);
这应该可以解决您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.