• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

softklin

Mostrar dados no formulário usando SQLite e VB.net

4 mensagens neste tópico

Olá a todos.

Estou a fazer uma aplicação que guarda a informação numa base de dados SQLite, versão 3. já consegui inserir dados, mesmo com imagens, tudo bem. O problema é que agora quero apresentar todos os dados de uma tabela, mas sem ser numa lista, isto é, temos botões de avançar e retroceder, e os elementos vão mudando.

Ouvi falar de um controlo ao género do ADO, mas não consigo compreender como funciona aquilo, por isso tentei, no arranque do form, carregar os id's, e ao carregar nos botões, indo fazer queries com esses ids; o programa busca todos os ids da tabela, sejam 1,2,3. Inicialmente é apresentada a informação respeitante à linha que tem o id1, ao carregar no botão "registo seguinte", linha do id2, e assim sucessivamente.

Pronto, depois de tanto paleio querem é código, não é? :) Tentei assim:

        ' carregar dados da BD
        Dim SQLconnect As New SQLite.SQLiteConnection()
        Dim SQLcommand As New SQLite.SQLiteCommand()
        Try
            SQLconnect.ConnectionString = "Data Source=sgc.db3;"
            SQLconnect.Open()
            SQLcommand = SQLconnect.CreateCommand
            SQLcommand.CommandText = "SELECT * FROM tabela"
            Dim SQLreader As SQLite.SQLiteDataReader = SQLcommand.ExecuteReader()

            If Not SQLreader.HasRows Then
                MsgBox("Não há registos!", MsgBoxStyle.Exclamation)
                Me.Close()
            Else
                While SQLreader.Read
                    ' ler ids de sql para a a lista ligada
                    resultIDs.AddLast(CInt(SQLreader(0)))
                End While
            End If
        Catch erro As Exception
            MsgBox("Ocorreu um erro: " & erro.ToString, MsgBoxStyle.Critical)
            Me.Close()
        End Try
        SQLcommand.Dispose()
        SQLconnect.Close()

Aquele resultIDs era uma lista ligada, mas lembrei-me que não vou poder por exemplo, aceder ao nó de trás sem percorrer a lista do inicio... O que queria que me auxiliassem: como fazer isto de uma maneira "limpa" e optimizada?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Obrigado jpaulino pela tua resposta. Optei por colocar os controlos, apesar de ter uma certa alergia ao número de controlos a adicionar, mas enfim... Ainda não consegui por a funcionar, por causa de alguns tipos de dados que não coincidem, por isso pedia que deixassem este tópico em aberto, sou capaz ainda de precisar dele.  :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pedia que deixassem este tópico em aberto, sou capaz ainda de precisar dele.  :)

Os tópicos nunca (ou muito raramente) são fechado!

Se precisares de mais ajuda, diz.

Boa sorte

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora