Enviar dados para uma tabela via sql...

07/04/2003

0

Programa para lanhouse

Enviar dados para uma tabela via SQL quando o usuário logar na máquina enviar a hora inicial, servico escolhido, Nome de usuário e quando ele fechar o programa preciso enviar a hora final para o mesmo registro.

Primeiro preciso enviar a hora inicial, servico escolhido, Nome de usuário faço assim?

insert into logs ( nom_usuario, servico, hora_inicial, hora_final) values
(nomecampo, nomeservico, hora_inicial)

onde nomecampo = a um edit e nomeservico igual a outro edit.

Depois q o usuário fechar o programa preciso enviar:
Hora_final no mesmo registro.
faço assim?

insert into logs (hora_final) values (hora_final)
where (´nomecampo.text´ = nom_usuario)

desde já obrigado


Anonymous

Anonymous

Responder

Posts

07/04/2003

Anonymous

Sugiro que vc crie um campo identificador único no arquivo Logs, para que vc possa recuperá-lo e manipulá-lo adequadamente:

query1.Text := ´insert into logs ( [b:2a25000691]codlog[/b:2a25000691],nom_usuario, servico, hora_inicial) values
([b:2a25000691]:codlog[/b:2a25000691],:nomecampo, :nomeservico, :hora_inicial)´;

//CodLogAtual será a variável global
CodLogAtual := MaxCodLog+1;//Maxcodlog será uma função que retornará o máximo codlog do arquivo
query1.ParamByName(´CODLOG´).AsInteger := CodLogAtual;
query1.ParamByName(´NOM_USUARIO´).AsString := EditUsuario.Text;
query1.ParamByName(´SERVICO´).AsString := EditServico.Text;
query1.ParamByName(´HORA_INICIAL´).AsDateTime := Time;
query1.ExecSql;

onde na saída:

query1.Text := ´update logs set hora_final=:hora_final
where codlog=:codlog´;
query1.ParamByName(´HORA_FINAL´).AsDateTime := Time;
query1.ParamByName(´CODLOG´).AsInteger := CodLogAtual;
query1.ExecSQL;


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar