从DatagridView中的两个表中获取列

时间:2016-07-01 08:22:19

标签: c# sql sql-server datagridview

我有两个表,我想在DatagridView(Data1)

中添加列
mycon.Open();
SqlCommand cmd = new SqlCommand("SELECT ItemName,Price1 FROM Pharmacy_Items", mycon);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
    Data1.Rows.Add();
    Data1.Rows[x].Cells[0].Value = reader["ItemName"].ToString();
    Data1.Rows[x].Cells[1].Value = reader["Price1"].ToString();
    x++;
}
mycon.Close();

现在我想将另一个表中的列添加到DatagridView(Data1.Rows[x].Cells[2].Value)。我怎样才能做到这一点?

我是SQL新手。 :)

1 个答案:

答案 0 :(得分:0)

只需更改您的查询,使用您需要的表格加入并添加您想要显示的新列。示例如下。

mycon.Open();
SqlCommand cmd = new SqlCommand("SELECT p.ItemName, p.Price1, o.ColumnFromOtherTable FROM Pharmacy_Items p INNER JOIN OtherTable o ON p.ID = o.ID", mycon);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
    Data1.Rows.Add();
    Data1.Rows[x].Cells[0].Value = reader["ItemName"].ToString();
    Data1.Rows[x].Cells[1].Value = reader["Price1"].ToString();
    Data1.Rows[x].Cells[2].Value = reader["ColumnFromOtherTable"].ToString();
    x++;
}
mycon.Close();