C# 如何在一个datagridview c上合并2个数据库
在一种形式中,我有2个DGV和2个数据库!,一个用于查看交易,一个用于查看标题详细信息im只能显示一个交易,但我无法显示另一个用于显示标题详细信息 如何将来自不同数据库的2个主键或ID的数据合并到一个视图窗体内的DataGridView中 这是我的代码:C# 如何在一个datagridview c上合并2个数据库,c#,sql,C#,Sql,在一种形式中,我有2个DGV和2个数据库!,一个用于查看交易,一个用于查看标题详细信息im只能显示一个交易,但我无法显示另一个用于显示标题详细信息 如何将来自不同数据库的2个主键或ID的数据合并到一个视图窗体内的DataGridView中 这是我的代码: public HistoryTransaction() { InitializeComponent(); } private void HistoryTransaction_Load(objec
public HistoryTransaction()
{
InitializeComponent();
}
private void HistoryTransaction_Load(object sender, EventArgs e)
{
//this is to get data from database
dataSource = con.executeQuery("SELECT * FROM TrHeaderTransaction");
dataGridView1.DataSource = dataSource;
dataSource2 = con.executeQuery("SELECT * FROM TrDetailTransaction");
dataGridView2.DataSource = dataSource2;
//to select data into dataTable
DataTable obj = con.executeQuery("SELECT * FROM TrHeaderTransaction");
for (int i = 0; i < obj.Rows.Count; i++)
{
transBox.Items.Add(obj.Rows[i].ItemArray[0].ToString());
}
transBox.SelectedIndex = 0;
}
private void CloseBtn_Click(object sender, EventArgs e)
{
this.Close();
}
我认为您需要在数据库中进行连接:
SELECT * FROM TrHeaderTransaction, TrDetailTransaction
WHERE TrHeaderTransaction.ID = TrDetailTransaction.HeaderID
当然,由于不知道字段的名称,我无法给出确切的SQL
还有您可以使用的语法。从您的需求中我可以理解的是,您需要的数据库解决方案如下:
enter code here
SELECT h.*,d.* FROM TrHeaderTransaction h, TrDetailTransaction d
WHERE h.TrHeaderTransaction.ID = d.TrDetailTransaction.ID and
h.TrHeaderTransaction.SID = d.TrDetailTransaction.ID
or
Alternatively you can do the same using datatables at the front end;