我在从同一数据库表中的两个不同列读取数据时遇到问题。 (抱歉我的英语不好。)
String status = "1";
SqlConnection conn = new SqlConnection("Server=localhost;Integrated Security=true;database=WebsiteDatabase");
conn.Open();
SqlCommand cmdname = conn.CreateCommand();
cmdname.CommandText = "select product, quantity from tlbOrder where status = '1'";
//get product name and quantity
cmdname.Parameters.Add("@status", status);
SqlDataReader dr = cmdname.ExecuteReader();
StringBuilder sb = new StringBuilder();
while (dr.Read())
{
sb.AppendFormat("{0}, ", dr[0].ToString());
}
label1 = ""+sb.ToString();
但是,只返回“产品”详细信息。
预期结果:带有产品名称+数量字符串的标签(例如笔记本电脑1,键盘3,扬声器5)等。
答案 0 :(得分:5)
嗯,向AppendFormat
添加另一个参数没有问题while (dremail.Read())
{
sb.AppendFormat("{0}, {1}", dr[0].ToString(), dr[1].ToString());
}
但是,您的代码会尝试在同一标签中插入可能很长的产品列表 也许更好的方法应该是使用List或GridView