当前位置:编程学习 > C#/ASP.NET >>

关于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]+');
                         }
为什么出现常数中有换行符?谢谢 --------------------编程问答--------------------

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);
--------------------编程问答-------------------- 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+=")";
的结果我要显示在datagrid中,总是显示system.data.datarowview的错误.
请问是哪的问题啊? --------------------编程问答-------------------- 学习了,谢谢! --------------------编程问答-------------------- 现在忙工作,有空来看出了什么错,先留个纪念。 --------------------编程问答-------------------- 怎么没有人回答啊?都一周了!没人知道吗 --------------------编程问答--------------------

            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语句
--------------------编程问答-------------------- 上面的  listBox2.Items.Add(listBox1.SelectedItems[i - 1]);    语句没有用,你当没有。 --------------------编程问答-------------------- llsus:你好,listbox1的内容显示正常,但是datagrid不能显示查询结果,请你帮我看看.我的代码如下:功能就是运行-显示listbox1的items然后选择多项items后click button-把查询结构显示在datagrid中
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#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,