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

Update, Delphi e Access


gsguma

Pergunta

Galera,

Alguém pode dar uma força ai!!!

conexao.ado_emissao.Close; 
conexao.ado_emissao.open; 
conexao.adq_emissao.active:=false; 
conexao.adq_emissao.sql.clear; 
conexao.adq_emissao.sql.add('update tabela set item='''+edit_item.text+''' where codigo='+edit_codigo.text+' ');
conexao.adq_emissao.ExecSQL;

Aplicação simples Delphi e access

(tipo de dados tabela => codigo = integer longo "autonumeração ou auto increment")

O que falta?

Editado por Micheus
Separados os comando por linha para melhorar a visualização do código
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

gsguma, sua dúvida não ficou muito clara.

Qual o problema/erro que você está tendo?

Aparentemente o UPDATE estaria correto.

conexao.adq_emissao.sql.add('update tabela set item='''+edit_item.text+''' where codigo='+edit_codigo.text+' ')
apenas que se este seu campo item for do tipo inteiro, você não precisa utilizar áspas, ou seja, poderia ficar deste modo:
conexao.adq_emissao.sql.add('update tabela set item='+edit_item.text+' where codigo='+edit_codigo.text+' ')
Uma observação quanto a sua codificação: setar a propriedade Active = False ou chamar o método Close é exatamente a mesma coisa, logo, use apenas um. E também, não faz muito sentido chamar o método Open como você colocou. Então, pode ser, também, que seu problema não citado esteja relacionado a este Open, dependendo do que esteja colocado na propriedade SQL. A sua consulta de forma mais correta (se eu não estiver errado quanto aos campos) seria:
conexao.ado_emissao.Close;
conexao.adq_emissao.sql.Clear;
conexao.adq_emissao.sql.Add('update tabela set item='+edit_item.text+' where codigo='+edit_codigo.text+' ');
conexao.adq_emissao.ExecSQL;
Mas já aconselho a ir pensando em usar parametrização, este hábito pode lhe poupar dores de cabeças futuras. Fazendo uso deste recurso, seu código ficaria assim (ex. supondo uso de ADO):
conexao.ado_emissao.Close;
conexao.adq_emissao.sql.Clear;
conexao.adq_emissao.sql.Add('update tabela set item = :Item where codigo = :Codigo ');
conexao.adq_emissao.Params.ParamByName('Item').AsInteger := StrToInt(edit_item.text);
conexao.adq_emissao.Params.ParamByName('Codigo').AsInteger := StrToInt(edit_codigo.text);
conexao.adq_emissao.ExecSQL;

Abraços

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...