关于listbox查询问题
select * from 表名 where 名称=********表示listbox中我选择的item,其实listbox为多选项,这个sql查询语句该怎么写谢谢!
例如:listbox我选择北京,天津选项,我怎么在表中查到名称为北京和天津的内容。
--------------------编程问答-------------------- select * from 表名 where 名称 IN (listbox.SelectedItems) --------------------编程问答-------------------- int count=listBox1.SelectedItems.Count;
for(int i=0;i<count;i++)
{
string strCon="select 名称,氮素,磷素,钾素 from y2000 where 名称 in('+listBox1.SelectedItems[i]+');
}
为什么出现常数中有换行符?谢谢 --------------------编程问答--------------------
--------------------编程问答-------------------- listbox里面显示的也是从数据库中读出来的.select 名称 from y2000.然后设置了listbox.valuemember和listbox.displaymember后可以正常显示在listbox中,但是查询完
string sql="select 名称,氮素,磷素,钾素 from y2000 where 名称 in(";
int count=listBox1.SelectedItems.Count;
for(int i=0;i <count;i++){
sql+="'"+listBox1.SelectedItems[i].ToString()+"'";
if(i<=count-1)sql+=",";
}
sql+=")";
MessageBox.Show(sql);
string sql="select 名称,氮素,磷素,钾素 from y2000 where 名称 in(";
int count=listBox1.SelectedItems.Count;
for(int i=0;i <count;i++){
sql+="'"+listBox1.SelectedItems[i].ToString()+"'";
if(i<=count-1)sql+=",";
}
sql+=")";
的结果我要显示在datagrid中,总是显示system.data.datarowview的错误.
请问是哪的问题啊? --------------------编程问答-------------------- 学习了,谢谢! --------------------编程问答-------------------- 现在忙工作,有空来看出了什么错,先留个纪念。 --------------------编程问答-------------------- 怎么没有人回答啊?都一周了!没人知道吗 --------------------编程问答--------------------
--------------------编程问答-------------------- 上面的 listBox2.Items.Add(listBox1.SelectedItems[i - 1]); 语句没有用,你当没有。 --------------------编程问答-------------------- llsus:你好,listbox1的内容显示正常,但是datagrid不能显示查询结果,请你帮我看看.我的代码如下:功能就是运行-显示listbox1的items然后选择多项items后click button-把查询结构显示在datagrid中
string cmd="";
if (listBox1.SelectedItems.Count >0)
{
cmd = " in ('" + listBox1.SelectedItems[0] + "'";
for (int i = 2; i <= listBox1.SelectedItems.Count ; i++)
{
cmd = cmd + ",'";
cmd=cmd+ listBox1.SelectedItems[i-1] + "'" ;
listBox2.Items.Add(listBox1.SelectedItems[i - 1]);
}
}
if (cmd != "")
{
cmd = "select * from 表名 where 名称 " + cmd+")";
}
else
{
cmd = "select * from 表名";
}
//这里 cmd 就是要你要查询的SQL语句
private void Form1_Load(object sender, System.EventArgs e)
{
OleDbConnection dbconn=new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data source=E:\program\n\db.mdb");
dbconn.Open();
//操作数据,用dataset
string sql="select 名称 from y2000" ;
OleDbDataAdapter da=new OleDbDataAdapter(sql,dbconn);
DataSet ds=new DataSet();
da.Fill(ds);
listBox1.DisplayMember="名称";
listBox1.ValueMember="名称";
listBox1.DataSource=ds.Tables[0].DefaultView;
}
private void button1_Click(object sender, System.EventArgs e)
{
OleDbConnection dbconn=new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data source=E:\program\n\db.mdb");
dbconn.Open();
//操作数据,用dataset
string sql="select 名称,氮素,磷素,钾素 from y2000 where 名称 in(";
int count=listBox1.SelectedItems.Count;
for(int i=0;i<count;i++)
{
sql+="'"+listBox1.SelectedItems[i].ToString()+"'";
if(i<=count-1)
sql+=",";
}
sql+=")";
MessageBox.Show(sql);
OleDbDataAdapter da=new OleDbDataAdapter(sql,dbconn);
DataSet ds=new DataSet();
da.Fill(ds);
dataGrid1.DataSource=ds.Tables[0].DefaultView;
dbconn.Close();
}
--------------------编程问答-------------------- select * from 表名 where 名称 IN (listbox.SelectedItems) --------------------编程问答-------------------- 我现在的问题是datagrid不能显示查询结果,总显示system.data.datarowview错误 --------------------编程问答-------------------- to楼主,我看不错你的代码有任何问题,如果数据库有满足条件的数据,就应该有显示了。
补充:.NET技术 , C#