我的数据库Category (Cat_id,Cat_name)和Products中有两个表。Cat_id是Products表中的外键。
当我将产品详细信息从Products表检索到DataGridView中时,我希望显示Cat_id列的值,它的名称(由Cat_name)而不是id本身。
我该怎么做?请帮帮我。下面是一个示例代码。
private void searchIconPIctureBox_Click(object sender, EventArgs e)
{
string product_txt = searchTxt.Text;
if ((product_txt) != "")
{
try
{
conn.Open();
com.Connection = conn;
string search_Product = searchTxt.Text;
com.CommandText = "select Name, Type, Amount, Price, Cat_id from Product_records where Name = search_Product ";
SqlDataReader dtr = com.ExecuteReader();
DataTable dttable = new DataTable();
dttable.Load(dtr);
ProductGridView.DataSource = dttable;
conn.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}发布于 2020-09-05 07:39:58
SQL查询应该在产品和类别表之间使用内部连接。
select Name, Type, Amount, Price, c.Name
from Personal_records
inner join Category c on records.Cat_id = c.Cat_id
where Name = search_Product发布于 2020-09-05 07:53:16
你可以用一个DataGridViewComboBox来帮你做。
我从3:50开始在这个视频https://www.youtube.com/watch?v=zrtjZlTYLQA中这样做,但是引导它的视频显示了如何处理创建数据集并将其放在表单上的情况。
如果你是一个读者而不是一个观察者,这里有一个文本概述。您可能已经做了其中的一些工作:
将数据集添加到您的project
H 216H 117将其数据源设置为数据集中的类别表,将显示成员设置为idH 218H 119运行项目<代码H<220/code><>f<221/code>>https://stackoverflow.com/questions/63751500
复制相似问题