none
Exibir consulta de banco access em listwiew RRS feed

  • Discussão Geral

  • Galera

    Estou iniciando em VB e tenho uma dúvida. Gostaria de saber como exibir o resultado da consulta abaixo em um ListWiew?

    Public Class Menu_Empresa

        Public conecta As New OleDbConnection
        Public comando As New OleDbCommand

        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

            Dim sql As String

            Try
                conecta.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Realdo\Desktop\Projeto\dados.accdb;Persist Security Info=False;")

                sql = "select Id,razao from empresa"



                conecta.Open()
                comando = New OleDbCommand(sql, conecta)

                comando.ExecuteNonQuery()


                '//// Não sei como exibir os dados da consulta no listwiew1 a partir daqui


            Catch ex As Exception

                conecta.Close()
            End Try

            conecta.Close()



        End Sub

    Conto com a colaboração.

    Realdo de Oliveira

    • Tipo Alterado Giovani Cr sexta-feira, 10 de janeiro de 2014 12:48
    sábado, 4 de janeiro de 2014 02:38

Todas as Respostas

  • Você pode usar o OleDbReader. E ao invés de executar o "comando.ExecuteNonQuery()" pode executar o "comando.ExexuteReader()", ou seja: Dim leitor As OleDbReader=comando.ExexuteReader() While leitor.Read() ListView1.Items.Add(leitor.Razao) 'ou então ao invés de leitor.Razao, fica "leitor.Items("razao")" End While -------------------- Atenção, posso estar a falhar na hierarquia de algum objecto. Mas o importante é você fica sabendo como interpretar os resultados (linha a linha) que foram fornecidos pela Base de Dados utilizando as Classes do OLE. Abraço, diga se funcionou ou não
    sábado, 4 de janeiro de 2014 06:15
  • Prezado Alberto,

    Bom dia

    Obrigado.

    Consegui assim com seu código.

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Dim sql As String
            ListView1.Clear()

            Try
                conecta.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Realdo\Desktop\Projeto\dados.accdb;Persist Security Info=False;")

                sql = "select Id,razao from empresa"

                conecta.Open()
                comando = New OleDbCommand(sql, conecta)



                'comando.ExecuteReader()
                Dim leitor As OleDbDataReader = comando.ExecuteReader()

                While leitor.Read()

                    ListView1.Items.Add(leitor.Item("ID"))
                    ListView1.Items.Add(leitor.Item("razao"))

                End While

            Catch ex As Exception

                conecta.Close()
            End Try
            conecta.Close()
        End Sub

    Uma dúvida, os dados da listwiew são exibidos na horizontal e não em formato de lista, sabe me dizer porque?

    Exemplo: joao pedro maria paulo ...

    queria que ficasse assim

    Joao

    pedro

    maria 

    paulo


    sábado, 4 de janeiro de 2014 15:57