Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

PMSF

erro a gravar dados na base de dados

Mensagens Recomendadas

PMSF    2
PMSF

venho procurar ajuda, visto que estou a dar os primeiros passos em VB.Net. (estou a utilizar o MIcrosoft Visual Basic 2010)

Estou a tentar perceber o funcionamento dos processos para gravar dados numa base de dados Access. Para isso estou a seguir o exemplo da Wiki "Programação para acesso de dados (Access)".

O problema que encontro ocorre quando tento gravar, seja um novo dado ou actualizar e diz:

"não foi fornecido nenhum valor para um ou mais parâmetros necessários"

o código associado ao botão que grava tem uma condição para saber se é uma edição ou um dado novo, e  é:

        
        Dim strSql As String
        Dim Id As String = txtIDConta.Text
        Dim Nome As String = txtNomeConta.Text
        Dim Entidade As String = txtEntidadeConta.Text
        Dim NiB As String = txtNiBConta.Text

        If Grava = "Novo" Then
            '*** Novos dados
            strSql = "INSERT INTO db_conta (id, nomeConta, entidadeConta, Nib) VALUES (" & Id & ","" & Nome & ""," & Entidade & "," & NiB & ")"
            ExecuteReader(strSql)

        ElseIf Grava = "Editar" Then

            '*** actualizar dados
            strSql = "UPDATE db_conta SET (nomeConta = " & Nome & ", entidadeConta = " & Entidade & ", NiB = " & NiB & ") WHERE id =" & Id
            ExecuteReader(strSql)
        End If

agradeço a atenção, paciência e a ajuda

:D

EDIT: Geshi adicionado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fil79    5
fil79

suponho que esse campo seja a chave primária, sendo auto-increment não pode ser preenchido por ti, retira o id da query que estás a executar e testa

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
PMSF    2
PMSF

fiquei confuso

tenho esta:

strSql = "INSERT INTO db_conta (id, nomeConta, entidadeConta, Nib) VALUES (" & Id & "," & Nome & "," & Entidade & "," & NiB & ")"

e devo colocá-la:

strSql = "INSERT INTO db_conta (id, nomeConta, entidadeConta, Nib) VALUES (," & Nome & "," & Entidade & "," & NiB & ")"

ou

strSql = "INSERT INTO db_conta (nomeConta, entidadeConta, Nib) VALUES (" & Nome & "," & Entidade & "," & NiB & ")"

??

EDIT: Geshi adicionado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fil79    5
fil79

Mas atenção, não conheço a tua aplicação, estou só a dizer para tu testares. Precisas que seja fornecido o ID pelo formulário? Mesmo que seja preciso, esse id nunca poderá um autonumber, na tabela!

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


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade