Ir para conteúdo
Fórum Script Brasil
  • 0

Erro ao inserir data no banco


Gabriel Cabral

Pergunta

E ae galera.....então...o seguinte...

o código abaixo é para inserir dados no banco....está funcionando, exceto quando eu coloco uma data no meio......

procedure TfrmCadPro.btnGravarClick(Sender: TObject);
begin

dm.Query1.Close;
dm.Query1.SQL.Clear;

dm.Query1.SQL.Add('INSERT INTO ESTAPRO(ESTAPRO.PROCOD,ESTAPRO.PROTIP,ESTAPRO.PROCAD,ESTAPRO.PRODES) VALUES (:cod,:secao,:datacad,:desc)');

dm.Query1.ParamByName('cod').value := txtCod.Text;
dm.Query1.ParamByName('secao').value := txtSecao.Text;
dm.Query1.ParamByName('datacad').value := txtDataCad.Text;
dm.Query1.ParamByName('desc').value := txtDesc.Text;

dm.Query1.ExecSQL;

end;

por causa da data, dá o seguinte erro:

Project winsuperm.exe raised exception class EDBEngineError with message 'Type mismatch in expression.'.

o que eu devo fazer???

Obrigado

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

message 'Type mismatch in expression.'.

mensagem 'Tipo incompativel na expressão'

Isso significa que voce esta tentanto atribuir a um campo data ( datacad ) uma string ( txtDataCad.Text )

dm.Query1.ParamByName('datacad').value := txtDataCad.Text;

tente esta mudança

dm.Query1.ParamByName('datacad').value := strtodate(txtDataCad.Text);

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
message 'Type mismatch in expression.'.

mensagem 'Tipo incompativel na expressão'

Isso significa que voce esta tentanto atribuir a um campo data ( datacad ) uma string ( txtDataCad.Text )

dm.Query1.ParamByName('datacad').value := txtDataCad.Text;

tente esta mudança

dm.Query1.ParamByName('datacad').value := strtodate(txtDataCad.Text);

abraço

Muito obrigado, Jhonas...

funcionou dessa forma que você disse....era mesmo só converter os tipos de dados....

assim como fiz ..

dm.Query1.ParamByName('datacad').value := strtodate(txtDataCad.Text);
tambem precisei fazer
dm.Query1.ParamByName('cod').value := strtofloat(txtCod.Text);

Valeu

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...