PROBLEMA EM LISTAR ITENS DO BANCO EM UMA LISTIBOX
Boa noite pessoal.
Estou com um probleminha em listar os itens de um banco de dados (access) em uma listbox ou combobox.
Por exemplo, se no banco tenho 12 itens para mostrar, quando eu jogo para o listbox ou combobox ele joga apenas 11.
Sempre está ocultando um dos registros.
Estou usando o seguinte código:
Se puderem me ajudar, fico muito grato.
Ótima semana a todos!
Estou com um probleminha em listar os itens de um banco de dados (access) em uma listbox ou combobox.
Por exemplo, se no banco tenho 12 itens para mostrar, quando eu jogo para o listbox ou combobox ele joga apenas 11.
Sempre está ocultando um dos registros.
Estou usando o seguinte código:
Private Sub atualizaosestados()
Me.cadcli_estado.Items.Clear()
Dim con As OleDbConnection
Dim sql As String
Str = [Ô]Provider=Microsoft.Jet.oledb.4.0;Data Source= [Ô] & form_admpainel.lbl_dblocal.Text & [Ô]db_locais.mdb;[Ô]
con = New OleDbConnection(Str)
sql = [Ô]select uf_abrev from estados[Ô]
Dim cmd As OleDbCommand
Dim r As OleDbDataReader
Try
con.Open()
cmd = New OleDbCommand(sql, con)
r = cmd.ExecuteReader()
If r.Read Then
Do While r.Read
Me.cadcli_estado.Items.Add(r.GetValue(0).ToString())
Loop
Else
MsgBox([Ô]Erro ao carregar[Ô], vbCritical, [Ô]Erro[Ô])
End If
con.Close()
Catch ex As OleDbException
MsgBox(ex.Message, MsgBoxStyle.Critical, [Ô]Oledb Error[Ô])
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, [Ô]General Error[Ô])
End Try
End Sub
Se puderem me ajudar, fico muito grato.
Ótima semana a todos!
Bom dia RAFAELMERINI,
Experimente trocar esta linha:
Por esta linha:
O [Ô].Read[Ô] faz um salto automático quando invocado.
- O seu exemplo está aqui:
http://msdn.microsoft.com/pt-br/library/haa3afyz(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2
- Como o [Ô].Read[Ô] funciona está explicado aqui:
http://msdn.microsoft.com/query/dev12.query?appId=Dev12IDEF1&l=EN-US&k=k(System.Data.OleDb.OleDbDataReader.Read);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5);k(DevLang-VB)&rd=true
====================================================
Avança o OleDbDataReader para o próximo registro.
Observações
-------------------------------------------------- ------------------------------
A posição padrão do OleDbDataReader é antes do primeiro registro. Portanto, você deve chamar Ler para começar a acessar os dados.
Enquanto o OleDbDataReader está sendo usado, o OleDbConnection associada está ocupado servindo-o até que você chamar Close.
====================================================
[][ô]s,
Tunusat.
Experimente trocar esta linha:
If r.Read Then
Por esta linha:
If r.HasRows Then
O [Ô].Read[Ô] faz um salto automático quando invocado.
- O seu exemplo está aqui:
http://msdn.microsoft.com/pt-br/library/haa3afyz(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2
- Como o [Ô].Read[Ô] funciona está explicado aqui:
http://msdn.microsoft.com/query/dev12.query?appId=Dev12IDEF1&l=EN-US&k=k(System.Data.OleDb.OleDbDataReader.Read);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5);k(DevLang-VB)&rd=true
====================================================
Avança o OleDbDataReader para o próximo registro.
Observações
-------------------------------------------------- ------------------------------
A posição padrão do OleDbDataReader é antes do primeiro registro. Portanto, você deve chamar Ler para começar a acessar os dados.
Enquanto o OleDbDataReader está sendo usado, o OleDbConnection associada está ocupado servindo-o até que você chamar Close.
====================================================
[][ô]s,
Tunusat.
Isso mesmo cara, só mudei o .read para o .hashows
Problema resolvido.
Obrigado mesmo :D
Problema resolvido.
Obrigado mesmo :D
Citação::
Bom dia RAFAELMERINI,
Experimente trocar esta linha:If r.Read Then
Por esta linha:If r.HasRows Then
O [Ô].Read[Ô] faz um salto automático quando invocado.
- O seu exemplo está aqui:
http://msdn.microsoft.com/pt-br/library/haa3afyz(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2
- Como o [Ô].Read[Ô] funciona está explicado aqui:
http://msdn.microsoft.com/query/dev12.query?appId=Dev12IDEF1&l=EN-US&k=k(System.Data.OleDb.OleDbDataReader.Read);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5);k(DevLang-VB)&rd=true
====================================================
Avança o OleDbDataReader para o próximo registro.
Observações
-------------------------------------------------- ------------------------------
A posição padrão do OleDbDataReader é antes do primeiro registro. Portanto, você deve chamar Ler para começar a acessar os dados.
Enquanto o OleDbDataReader está sendo usado, o OleDbConnection associada está ocupado servindo-o até que você chamar Close.
====================================================
[][ô]s,
Tunusat.
Tópico encerrado , respostas não são mais permitidas