[firebase-br] Como editar registros
"J. Luís Schiavo"
lista.firebase em sysbase.com.br
Dom Nov 5 21:48:05 -03 2006
Sua sintaxe tá mais pra INSERT mas como falou em "EDITAR"...
*** e também falta a cláusula WHERE se não a alteração será aplicada a
todos os registros da tabela.
Tente isso para o UPDATE:
with Query1 do
begin
Active := False;
SQL.Clear;
SQL.Add('UPDATE EMPLOYEE SET FULL_NAME = :FNAME, LAST_NAME = :LNAME,
HIRE_DATE = :HDATE');
SQL.Add('WHERE COD_FUNC = :CODF ');
ParamByName('FNAME').AsString := Edit1.Text;
ParamByName('LNAME').AsString := Edit2.Text;
ParamByName('HDATE').AsDateTime := StrToDate(Edit3.Text); //
Edit3.Text deve conter uma data válida OK
ParamByName('CODF').AsInteger := StrToInt(Edit4.Text);
ExecSQL;
end;
Tente isso para INSERT:
with Query1 do
begin
Active := False;
SQL.Clear;
SQL.Add('INSERT INTO EMPLOYEE (FULL_NAME,LAST_NAME,HIRE_DATE)');
SQL.Add('VALUES (:FNAME, :LNAME, :HDATE)');
ParamByName('FNAME').AsString := Edit1.Text;
ParamByName('LNAME').AsString := Edit2.Text;
ParamByName('HDATE').AsDateTime := StrToDate(Edit3.Text); //
Edit3.Text deve conter uma data válida OK
ExecSQL;
end;
OBS.: Procure usar nomes mais significativos para os parâmetros assim o
código fica mais claro, vc. pode inventar os nomes seguindo um padrão é
claro, ou até utilizar o mesmo nome dos campos tipo :FULL_NAME,... O
tempo que vc. perde para dig. alguns caracteres a mais vc. ganhará em
dobro mais tarde quando precisar dar manutenção neste código :-)
E como o colega Jeudí já disse, o controle transacional é essencial!
T+
Ricero Ancelmo wrote:
> Bom dia amigos !!
> Como faço para editar varios campos com a instruçao SQL ?
> tentei o codigo abaixo e outros mas nenhum deu certo !!!
>
> with Query1 do
> begin
> Active := False;
> SQL.Clear;
> SQL.Add('UPDATE EMPLOYEE SET (FULL_NAME,LAST_NAME,HIRE_DATE)');
> SQL.Add('VALUES(:1,:2,:3)');
> ParamByName('1').AsString := Edit1.Text;
> ParamByName('2').AsString := Edit2.Text;
> ParamByName('3').AsDate := StrToDate(Edit3.Text); // data - este também nunca deu certo
> ExecSQL;
> end;
>
>
>
> Grato por qualquer informação...
> Ricero.
>
>
>
> _______________________________________________________
> Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora!
> http://br.mobile.yahoo.com/mailalertas/
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista