簡體   English   中英

如何在一個datagridview上合並2個數據庫C#

[英]how to merge 2 database on one datagridview c#

在一種形式中,我有2個DGV和2個Database!,一種用於查看事務,一種用於查看標頭詳細信息(我只能顯示一個事務),但我不能顯示其他一個來顯示標頭詳細信息

如何將來自兩個主鍵的數據或來自不同數據庫的ID合並到一個視圖表單中的DataGridView中?

這是我的代碼:

    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。

您還可以使用Join語法。

我可以從您的需求中了解到,您正在尋找數據庫解決方案,如下所示:

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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM