繁体   English   中英

将多个表中的列放入vb.net中的1个datagridview中

[英]getting columns from multiple tables into 1 datagridview in vb.net

我再问一次,由于我是vb的真正新手,因此我在数据库中使用Visual Studio 2010和mysql,我需要帮助来从不同的表中获得不同的列,但要从同一个数据库中加载到一个datagridview中。 任何帮助或技巧都将不胜感激。 谢谢,麻烦您了。

一种方法是使用带有所有联接列的DataTable作为数据源,您可以使用DataAdapter进行填充:

Private Function GetDataSource() As DataTable
    Const sqlSelect As String = "SELECT a.Col1 AS aCol1,a.Col2 AS aCol2,b.Col1 AS bCol1,b.Col2 AS bCol2 " & _
                               "FROM dbo.TableA AS a INNER JOIN dbo.TableB AS b ON a.IdCol=b.aIdCol " & _
                               "ORDER BY aCol1 ASC,bCol1 ASC"
    Try
        Dim table = New DataTable()
        Using con = New MySqlConnection(My.Settings.MySqlConnectionString)
            con.Open()
            Using da = New MySqlDataAdapter(sqlSelect, con)
                da.Fill(table)
                Return table
            End Using
        End Using
    Catch ex As Exception
        ' log message instead '
        Throw ' don't use throw new Exception or throw ex '
    End Try
End Function

现在,您可以将此DataTable用作DataGridView DataTable源:

me.dataGridView1.DataSource = GetDataSource()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM