将SQL表合并到公共datagridview中

时间:2012-08-21 23:47:43

标签: c# sql

您好我有2个SQL表,我想合并在datagridview中同时查看它们。通过将它绑定到数据集,我已经可以将其设置为查看一个,但是如何根据两个表包含的公共ID号(例如)合并这两个?

当前的datagridview填充代码(该函数被提供一个空的,新的DataTable):

public void populateSingleDataGridView(DataTable dt,  DataGridView dg, string SN_DB_Name)
{
     string selectProgramString = "select * from " + SN_DB_Name;
     SqlDataAdapter sqlDataAdaptor = new SqlDataAdapter(selectProgramString,connectionString);
     dt.Locale = System.Globalization.CultureInfo.InvariantCulture;
     sqlDataAdaptor.Fill(dt);
     dg.DataSource = dt;
}

2 个答案:

答案 0 :(得分:2)

您可以将两个表连接在一起:

select table1.Field1 as GridColumn1, table2.Field2 as GridColumn2
from table1
    inner join table2
    on table1.CommonId = table2.CommonId

如果您希望保持当前代码不变,则可以选择创建一个视图,例如

create view GridData
as
    select table1.Field1 as GridColumn1, table2.Field2 as GridColumn2
    from table1
        inner join table2
        on table1.CommonId = table2.CommonId

然后您可以将视图名称传递给SN_DB_Name。

注意:此选项将强制您为具有联接的任何查询创建视图。恕我直言,更好的选择是传递一个完整的SQL字符串。

祝你好运

答案 1 :(得分:0)

//尝试在查询中使用别名 //喜欢这个

从YourTable1 a,YourTable2 b中选择a.ID_number,b.Column1,b.Column2 其中a.ID_number = b.ID_Number