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

security

Pesquisar num DB Access

5 mensagens neste tópico

Ola.

Espero que alguem me possa ajudar a resolver este grave problema com que estou.

Tenho um formulário que consiste na pesquisa de Alunos ou Professores, em que a pesquisa e feita por nome, e se encontrar o registo preenche as labels com os respectivos dados, como  mostar a imagem

C:\Users\Miguel\Desktop\Nova pasta\Imagem1.png

Acontece que da-me erro :

Dim leitor As OleDb.OleDbDataReader = cmd.ExecuteReader

por favor ajudem-me. Preciso de ter isto pronto para Quarta feira... para apresentar para nota.

Aqui está o código:

Imports System.Data.OleDb
Imports System.Windows.Forms.Application
Public Class frmPesq
    Dim cmd As New OleDb.OleDbCommand
    Dim conn As New OleDbConnection
    Dim guarda As String
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & Application.StartupPath & "\DBCSG.mdb"
        If RadioButton1.Checked Then
            Dim strSQL As String = "select * From alunos where Nome=" & TextBox1.Text
            Dim cmd As OleDb.OleDbCommand = conn.CreateCommand

            cmd.CommandText = strSQL
            conn.Open()
            Dim leitor As OleDb.OleDbDataReader = cmd.ExecuteReader
            leitor.Read()
            Label11.Text = IIf(leitor("cod_int") Is DBNull.Value, "", leitor("cod_int"))
            Label12.Text = IIf(leitor("Nome") Is DBNull.Value, "", leitor("Nome"))
            Label13.Text = IIf(leitor("n_BI") Is DBNull.Value, "", leitor("n_BI"))
            Label14.Text = IIf(leitor("n_fiscal") Is DBNull.Value, "", leitor("n_fiscal"))
            Label19.Text = IIf(leitor("dataNasc") Is DBNull.Value, "", leitor("dataNasc"))
            Label20 = IIf(leitor("sexo") Is DBNull.Value, "", leitor("sexo"))
            Label21.Text = IIf(leitor("cp1") Is DBNull.Value, "", leitor("cp1"))
            Label22.Text = IIf(leitor("cp2") Is DBNull.Value, "", leitor("cp2"))
            Label23.Text = IIf(leitor("morada") Is DBNull.Value, "", leitor("morada"))
            Label24.Text = IIf(leitor("freguesia") Is DBNull.Value, "", leitor("freguesia"))
            Label25.Text = IIf(leitor("concelho") Is DBNull.Value, "", leitor("concelho"))
            Label26.Text = IIf(leitor("distrito") Is DBNull.Value, "", leitor("distrito"))
            Label27.Text = IIf(leitor("nacionalidade") Is DBNull.Value, "", leitor("nacionalidade"))

        ElseIf RadioButton2.Checked Then

            conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & Application.StartupPath & "\DBCSG.mdb"
            guarda = TextBox1.Text
            Dim strSQL As String = "select * From profs where Nome=" & guarda
            Dim cmd As OleDb.OleDbCommand = conn.CreateCommand

            cmd.CommandText = strSQL
            conn.Open()
            Dim leitor As OleDb.OleDbDataReader = cmd.ExecuteReader()
            MsgBox(guarda)
            leitor.Read()
            Label11.Text = IIf(leitor("cod_int") Is DBNull.Value, "", leitor("cod_int"))
            Label12.Text = IIf(leitor("Nome") Is DBNull.Value, "", leitor("Nome"))
            Label13.Text = IIf(leitor("n_BI") Is DBNull.Value, "", leitor("n_BI"))
            Label14.Text = IIf(leitor("n_fiscal") Is DBNull.Value, "", leitor("n_fiscal"))
            Label19.Text = IIf(leitor("dataNasc") Is DBNull.Value, "", leitor("dataNasc"))
            Label20 = IIf(leitor("sexo") Is DBNull.Value, "", leitor("sexo"))
            Label21.Text = IIf(leitor("cp1") Is DBNull.Value, "", leitor("cp1"))
            Label22.Text = IIf(leitor("cp2") Is DBNull.Value, "", leitor("cp2"))
            Label23.Text = IIf(leitor("morada") Is DBNull.Value, "", leitor("morada"))
            Label24.Text = IIf(leitor("freguesia") Is DBNull.Value, "", leitor("freguesia"))
            Label25.Text = IIf(leitor("concelho") Is DBNull.Value, "", leitor("concelho"))
            Label26.Text = IIf(leitor("distrito") Is DBNull.Value, "", leitor("distrito"))
            Label27.Text = IIf(leitor("nacionalidade") Is DBNull.Value, "", leitor("nacionalidade"))
            conn.Close()
        Else
            MsgBox("Não foi encontrado o registo. Deseja Cria-lo?", MsgBoxStyle.Exclamation, MsgBoxStyle.YesNoCancel)
        End If
    End Sub
End Class

Obrigado  :wallbash:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Dá-te o erro tens que nos dizer realmente o que diz o erro? Senão é-nos difícil ou mesmo impossível de ajudar.

Ps: Pelo código isto é vb.net e não vb6.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o erro que da é: Erro de sintaxe (operador em falta) na expressão de consulta 'Nome=Rui Manuel Casimiro De Santos Sousa''.

O nome Rui Manuel Casimiro De Santos Sousa é o nome pela qual a pesquisa deve ser feita.

O erro da-me na linha que referi no postagem inicial

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

uma hipótese é teres de enviar o nome em ' '

Tipo:

Dim strSQL As String = "select * From alunos where Nome='" & TextBox1.Text & "'"

Atenção: não se vê bem, mas tem ' ' junto com as aspas

Experimenta

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

obrigado... o problema foi resolvido mas surgiu-me um outro erro que apenas diz "cod_int" (é o nome de um campo da minha base de dados),  onde deveria listar os valores nas labels, ou seja no codigo seguinte:

Label11.Text = IIf(leitor("cod_int") Is DBNull.Value, "", leitor("cod_int"))
                Label12.Text = IIf(leitor("Nome") Is DBNull.Value, "", leitor("Nome"))
                Label13.Text = IIf(leitor("n_BI") Is DBNull.Value, "", leitor("n_BI"))
                Label14.Text = IIf(leitor("n_fiscal") Is DBNull.Value, "", leitor("n_fiscal"))
                Label19.Text = IIf(leitor("dataNasc") Is DBNull.Value, "", leitor("dataNasc"))
                Label20 = IIf(leitor("sexo") Is DBNull.Value, "", leitor("sexo"))
                Label21.Text = IIf(leitor("cp1") Is DBNull.Value, "", leitor("cp1"))
                Label22.Text = IIf(leitor("cp2") Is DBNull.Value, "", leitor("cp2"))
                Label23.Text = IIf(leitor("morada") Is DBNull.Value, "", leitor("morada"))
                Label24.Text = IIf(leitor("freguesia") Is DBNull.Value, "", leitor("freguesia"))
                Label25.Text = IIf(leitor("concelho") Is DBNull.Value, "", leitor("concelho"))
                Label26.Text = IIf(leitor("distrito") Is DBNull.Value, "", leitor("distrito"))
                Label27.Text = IIf(leitor("nacionalidade") Is DBNull.Value, "", leitor("nacionalidade"))

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