我有一个数字和名字的列表。我想搜索一个数据库,并查找该数字是否与我的sql选择匹配。如果是的话,我需要将其与名称一起填充到数据表中。然后,数据表中的foreach行将其写入另一个列表。我也无法将名称填充到数据表中,因为我没有在SQl中使用它作为参数选择。
DataTable dt = new DataTable();
try {
using (SqlConnection conn = getconnection()) {
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandTimeout = 5000;
string select = @"SELECT NBR
FROM People
where ID in (15,17) and NBR=Nbr and ACCEPTED=0";
foreach (Fields f in Members) {
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@Nbr", f.nbr);
cmd.CommandText = select;
SqlDataAdapter adapt = new SqlDataAdapter(cmd);
//if f.nbr matches sql select fill it to datatable how can I fill dt with f.name as well?
adapt.Fill(dt);
}
}
foreach (DataRow row in dt.Rows) {
Fields f1 = new Fields();
f1.nbr= Convert.ToInt64(row["NBR"]);
// f1.name=Convert.ToString(row["Name"]????
Not.Add(f1);
}
答案 0 :(得分:0)
使用
string select = @"SELECT NBR, Name
FROM People
where ID in (15,17) and NBR=@Nbr and ACCEPTED=0";