将多个表中的列添加到vb.net中的1个datagridview中

时间:2012-10-22 08:34:23

标签: mysql vb.net winforms datagridview

我再问一次,因为我在vb中真的很新,我使用visual studio 2010和mysql作为我的数据库,我需要帮助从不同的表中获取不同的列,但是相同的数据库并加载它到一个datagridview。任何形式的帮助或提示将不胜感激。拜托,谢谢。

1 个答案:

答案 0 :(得分:1)

一种方法是使用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的数据源:

me.dataGridView1.DataSource = GetDataSource()