PREENCHER DATAGRIDVIEW
                    Olá pessoal, estou tentando preencher um DATAGRIDVIEW, só que não estou conseguindo fazé-lo. Se alguém puder dar uma olhada neste código e verificar o q estou fazendo de errado, ficarei grato.
Private Sub Lista_Dados_Associados()
Dim Conn As New MySqlConnection(StrAssoc)
Dim Cmd As New MySqlCommand(ValAssoc, Conn)
Dim NewDt As New DataTable
Try
Dim Newdr As MySqlDataReader
Conn.Open()
Newdr = Cmd.ExecuteReader()
GridView_Assoc.ClearSelection()
If Newdr.HasRows = True Then
While Newdr.Read
NewDt.Columns.Add(Newdr.Item([Ô]matricula_associado[Ô]).ToString)
NewDt.Columns.Add(Newdr.Item([Ô]nome_razao_social[Ô]).ToString)
NewDt.Columns.Add(Newdr.Item([Ô]id_tipo_categoria_associado[Ô]).ToString)
End While
End If
GridView_Assoc.DataSource = NewDt
Newdr.Close()
Catch ex As MySqlException
MessageBox.Show([Ô]Failed to populate database list: [Ô] + ex.Message)
Finally
[ô]If Not dr Is Nothing Then dr.Close()
End Try
End Sub
Bem o que está acontençendo, quando o programa passa pela 1ª vez, ele atualiza a variável NewDt.Columns perfeitamenente, mas quando vai passar novamente, dá-se o erro:
A column named [ô]CONTRIBUINTE - TITULAR[ô] already belongs to this DataTable.
Como posso retirar este erro???
Obrigado,
                
            Private Sub Lista_Dados_Associados()
Dim Conn As New MySqlConnection(StrAssoc)
Dim Cmd As New MySqlCommand(ValAssoc, Conn)
Dim NewDt As New DataTable
Try
Dim Newdr As MySqlDataReader
Conn.Open()
Newdr = Cmd.ExecuteReader()
GridView_Assoc.ClearSelection()
If Newdr.HasRows = True Then
While Newdr.Read
NewDt.Columns.Add(Newdr.Item([Ô]matricula_associado[Ô]).ToString)
NewDt.Columns.Add(Newdr.Item([Ô]nome_razao_social[Ô]).ToString)
NewDt.Columns.Add(Newdr.Item([Ô]id_tipo_categoria_associado[Ô]).ToString)
End While
End If
GridView_Assoc.DataSource = NewDt
Newdr.Close()
Catch ex As MySqlException
MessageBox.Show([Ô]Failed to populate database list: [Ô] + ex.Message)
Finally
[ô]If Not dr Is Nothing Then dr.Close()
End Try
End Sub
Bem o que está acontençendo, quando o programa passa pela 1ª vez, ele atualiza a variável NewDt.Columns perfeitamenente, mas quando vai passar novamente, dá-se o erro:
A column named [ô]CONTRIBUINTE - TITULAR[ô] already belongs to this DataTable.
Como posso retirar este erro???
Obrigado,
                    Tenta desse modo
Dim Conn As New MySqlConnection
Dim Cmd As New MySqlCommand
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter([Ô]Select Sua_Tabela[Ô], Conn)
da.Fill(NewDt)
With Seu_Datagridview
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
e depois posta algo
            Dim Conn As New MySqlConnection
Dim Cmd As New MySqlCommand
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter([Ô]Select Sua_Tabela[Ô], Conn)
da.Fill(NewDt)
With Seu_Datagridview
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
e depois posta algo
                    ADHEL - obrigado por ter respondido, tentei a sua sugestão mais tb não deu certo
                
            
                    Posta o erro por favor
                
            
                    ADHEL - O erro começa na abertura do banco de dados
ACESS DENIED FOR USER [Ô]@[Ô]LOCALHOST[ô] (USING PASSWORD: NO)
mas consegui contornar.
Só que não apareçe nada no grid.
Olha com o código ficou:
Private Sub Lista_Dados_Associados()
StrAssoc = [Ô]Server=[Ô] & Servidor & [Ô];User id=[Ô] & Usuarios & [Ô];password=[Ô] & Senhas & [Ô];database=[Ô] & Bancos & [Ô];[Ô]
ValAssoc = [Ô]SELECT * FROM associados[Ô]
Dim Conn As New MySqlConnection(StrAssoc)
Dim Cmd As New MySqlCommand(ValAssoc, Conn)
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter(Cmd)
da.Fill(NewDt)
With GridView_Assoc
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub
Bem, quero que no meu grid, apareça alguns itens, como código e nome e nã a tabela toda, como faço para apareçer somente o que quero??
Obrigado
            ACESS DENIED FOR USER [Ô]@[Ô]LOCALHOST[ô] (USING PASSWORD: NO)
mas consegui contornar.
Só que não apareçe nada no grid.
Olha com o código ficou:
Private Sub Lista_Dados_Associados()
StrAssoc = [Ô]Server=[Ô] & Servidor & [Ô];User id=[Ô] & Usuarios & [Ô];password=[Ô] & Senhas & [Ô];database=[Ô] & Bancos & [Ô];[Ô]
ValAssoc = [Ô]SELECT * FROM associados[Ô]
Dim Conn As New MySqlConnection(StrAssoc)
Dim Cmd As New MySqlCommand(ValAssoc, Conn)
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter(Cmd)
da.Fill(NewDt)
With GridView_Assoc
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub
Bem, quero que no meu grid, apareça alguns itens, como código e nome e nã a tabela toda, como faço para apareçer somente o que quero??
Obrigado
                    tenta assim  
StrAssoc = [Ô]Server=[Ô] & Servidor & [Ô];User id=[Ô] & Usuarios & [Ô];password=[Ô] & Senhas & [Ô];database=[Ô] & Bancos & [Ô];[Ô]
ValAssoc = [Ô]SELECT * FROM associados[Ô]
Dim Conn As New MySqlConnection(StrAssoc)
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter(ValAssoc, Conn)
da.Fill(NewDt)
With GridView_Assoc
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub
ou
StrAssoc = [Ô]Server=[Ô] & Servidor & [Ô];User id=[Ô] & Usuarios & [Ô];password=[Ô] & Senhas & [Ô];database=[Ô] & Bancos & [Ô];[Ô]
      
Dim Conn As New MySqlConnection(StrAssoc)
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter(SELECT * FROM associados, Conn)
da.Fill(NewDt)
With GridView_Assoc
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub
                
            StrAssoc = [Ô]Server=[Ô] & Servidor & [Ô];User id=[Ô] & Usuarios & [Ô];password=[Ô] & Senhas & [Ô];database=[Ô] & Bancos & [Ô];[Ô]
ValAssoc = [Ô]SELECT * FROM associados[Ô]
Dim Conn As New MySqlConnection(StrAssoc)
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter(ValAssoc, Conn)
da.Fill(NewDt)
With GridView_Assoc
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub
ou
StrAssoc = [Ô]Server=[Ô] & Servidor & [Ô];User id=[Ô] & Usuarios & [Ô];password=[Ô] & Senhas & [Ô];database=[Ô] & Bancos & [Ô];[Ô]
Dim Conn As New MySqlConnection(StrAssoc)
Dim NewDt As New DataTable
Dim da As New MySqlDataAdapter
Try
Conn.Open()
da = New MySqlDataAdapter(SELECT * FROM associados, Conn)
da.Fill(NewDt)
With GridView_Assoc
.DataSource = NewDt
End With
Conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
End Try
End Sub
                    ADHEL  até a abertura do banco de dados perfeito, só que o sistema não está alimentando o GRID com as informações do banco de dados. Como faço para que o grid seja alimentado pelo o banco de dados que tenho.
Obrigado,
            Obrigado,
                    esse comando aà em cima ja deveria popular o grid.
Tem como voce zipar esse projeto e enviar para dar uma olhada junto com o banco?
            Tem como voce zipar esse projeto e enviar para dar uma olhada junto com o banco?
                    ADHEL - Dê uma olhada nisto - vc terá que fazer algumas alterações na abertura do banco de dados
                
            
                    Quando vou descompactar da erro
                
            
                    Você colocou alguma rotina no evento SelectionChange do grid?
Se colocou retire e teste.
Abraço
            Se colocou retire e teste.
Abraço
                        Tópico encerrado , respostas não são mais permitidas