c# 以数组中的值为条件 一 一查询表中同一字段的值,请问如何实现?
比如我定义了一个数组string[]name=“张三,李四,王五,.....”,然后用这个数组的内容一一去查询学生表中姓名为符合数组内容的对应的年龄,然后全部输出到一个文...
比如我定义了一个数组string[] name=“张三,李四,王五,.....”,然后用这个数组的内容一 一去查询学生表中姓名为符合数组内容的对应的年龄,然后全部输出到一个文本框中。因为数组长度是变化的,所以查询语句也是变化的。目前就卡在了这里。目前程序如下,文本框控件显示的值总是数组最后一个得到的值。希望各位能施以援手,谢谢!
string[] name=“张三,李四,王五,.....”;
for (int i = 0; i < name.Length; i++)
DBOperation DBOP = new DBOperation();
string DBOPSQL = "select * from tb_H_Examination where 姓名= '" +name[i].tostring()+ "' ";
DataTable setSQL = DBOP3.GetTable(DBOPSQL);//执行查询
Mybind1 = this.BindingContext[setSQL];//绑定数据源
this.textbox.DataBindings.Clear();//清除之前的绑定
this.textbox.DataBindings.Add("text", setSQL, "年龄");//绑定控件
this.textbox.AppendText(this.textbox.Text+“,”); 展开
string[] name=“张三,李四,王五,.....”;
for (int i = 0; i < name.Length; i++)
DBOperation DBOP = new DBOperation();
string DBOPSQL = "select * from tb_H_Examination where 姓名= '" +name[i].tostring()+ "' ";
DataTable setSQL = DBOP3.GetTable(DBOPSQL);//执行查询
Mybind1 = this.BindingContext[setSQL];//绑定数据源
this.textbox.DataBindings.Clear();//清除之前的绑定
this.textbox.DataBindings.Add("text", setSQL, "年龄");//绑定控件
this.textbox.AppendText(this.textbox.Text+“,”); 展开
1个回答
展开全部
这道题用数据绑定多此一举,还不如直接读到数据集,然后循环写出呢
//填充数据集
db.FindStudent("'张三', '李四', '王五'");
//循环写入数据到文本框
foreach (DataRow row in db.Ds.Tables["Student"].Rows)
{
this.txtText.AppendText(row["Age"].ToString());
}
追问
那请问如何将数组填充进数据集呢?因为数组长度是变化的,内容也是变化的。我只了解数据库填充进数据集,数组实在是不知道怎么弄。谢谢!
追答
就是将数据库查询的数据填充到数据集
然后依次讲数据集中逻辑表的行写到文本框呀
你上面的代码也不就是把查询的数据放到逻辑表然后绑定到文本框么
还有你SQL语句改下
改成
"select * from tb_H_Examination where 姓名 in ('张三', '李四', '王五', ...)
一次性查出来,这样就不用每次循环查一个人的信息
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询