Fórum erro em dar um update #475511

07/04/2014

0

galera veja esse código

with DataModule1.tbl_login do
begin
Active
Close;
SQL.Clear;
sql.Add('update TBLlogin set usuario="'+edt_usuario.text+'"senha="'+edt_senha_user.Text+'"status_membro="'+status_mbr+'"tp_permicao="'+resultado_permicao+'" where id_login="'+edt_codigo.text+'"');
ExecSQL;

end;

acontece assim quando eu busco as informacao da pesso trago ela para todos os meus edtis para que o usuário possa altera-los assim depois dar um uptade
porem da esse erro
ja tentei por no fim do código)'); não deu

[img]http://arquivo.devmedia.com.br/forum/imagem/361863-20140407-143537.jpg[/img]
Jose Silva

Jose Silva

Responder

Posts

07/04/2014

Marcos Oliveira

Acho que está falando um espaço em cada argumento.
Fiz algumas alterações pra ficar mais legível, incluindo o comando "QuotedStr", que irá inserir automaticamente as aspas.

Veja só:

with DataModule1.tbl_login do
begin
     Active
     Close;
     SQL.Clear;
     sql.Add('update TBLlogin set usuario=' + QuotedStr(edt_usuario.text) +', senha=' + QuotedStr(edt_senha_user.Text) + ', status_membro=' + QuotedStr(status_mbr) + ', tp_permicao=' + QuotedSTr(resultado_permicao) + ' where id_login=' + QuotedStr(edt_codigo.text));
     ExecSQL;

end;


Não testei no Delphi, então se der erro na sintaxe, é só verificar se coloquei alguma aspas errada.

Att,

Marcos
Responder

Gostei + 0

07/04/2014

Jose Silva

Você é fera cara, e obrido sou novo em delphi mas estou gostando bastante dessa linguagem boa de trabalhar

sera que você sabe como fazer um pesquisa nesse forum ?

vamos la tem um campo nesse forum que ta la buscar certo
mas quado vou pequisar não me tras resultados parecidos ai fico perguntando coisa
que talves já estão respondidas

como fazer isso.
Responder

Gostei + 0

08/04/2014

Marcos Oliveira

Realmente a pesquisa do forum não é muito fácil de encontrar as coisas.
Mas tem que ter paciência e ir procurando por palavras-chave diferentes.

Abraço!

Marcos
Responder

Gostei + 0

08/04/2014

Cauê Nishijima

vencelog o ideal nesses casos é sempre utilizar parâmetros para atribuis os valores, isso deixa o código sql que fica no meio do código delphi mais legível, além de ser mais seguro!

Exemplo:

with qryCliente do
begin
   SQL.Clear;
   SQL.Add('Update tb_clientes set nome = :v_nome, cnpj = :v_cnpj where id = :v_id');
   ParamByName('v_nome').AsString := 'Nome ficticio do cliente';
   ParamByName('v_cnpj').AsString := '00.000.000/0000-00';
   ParamByName('v_id').AsInteger := 1;
   ExecSQL;
end;


não testei o código, mas acredito que assim funcione!
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar