Qyery Urgente !!!!!

06/03/2003

0

Caros colegas, estou com um sério problema....., quando vou atualizar uma data atravez do comando Update a data é gravada na tabela da seguinte forma 03/05/2003 só que eu quero 05/03/2003..



Abs...


Oscar Luiz


Oscarluiz

Oscarluiz

Responder

Posts

06/03/2003

Navoid

como vc utiliza o comando???
coloque o código inteiro aqui pra poder ver como vc faz para gravar.

até


Responder

06/03/2003

Oscarluiz

a linha que apresenta o problem está em negrito...
\
procedure Tfrmconsulta.rbliberadoClick(Sender: TObject);
var
recebecodigo, datafinal : string;
begin
if query.RecordCount = 0 then
Begin
rbliberado.Checked:=false;
exit;
end;
recebecodigo := querycodigo.Text;
If Not (query.RecordCount = 0) then
Begin
query.Close;
query.SQL.Clear;
query.SQL.Add(´update problemas set status = ´ + ´´´´ + ´L´ + ´´´´ + ´ ´ + ´where status =´ + ´´´´ + ´P´ + ´´´´ + ´and codigo =´ + ´´´´ + recebecodigo + ´´´´ );
query.ExecSQL;
datafinal:=datetostr(now);
query.SQL.Clear;
[b:f3e99b479d]query.SQL.Add(´update problemas set dtfinal = ´ + ´´´´ + datafinal + ´´´´ + ´ ´ + ´where codigo =´ + ´´´´ + recebecodigo + ´´´´ ); [/b:f3e99b479d]
query.ExecSQL;
query.sql.Clear;
query.SQL.Add(´select * from problemas where status =´ + ´´´´ + ´P´ + ´´´´ );
query.Open;
query.Refresh;
query.Open;
rbliberado.Checked:=false;
end;
end;

[]´s

Oscar Luiz


Responder

06/03/2003

Navoid

bom vamos lá

eu não sei se vc sabe, mas vc pode usar parâmetros na query.
funciona assim:
vc coloca o caracter : seguido do nome do parâmetro assim:

****
select qualquercoisa from tabela where (codigo = :pcodigo)
****

entao tudo que vc tem que fazer é antes de executar este código tratar os parâmetros.
bom, mas qual a vantagem do parâmetro?
a vantagem é que vc informa de que tipo é o parâmetro (ex. integer, string, [b:c0bf3135bb]tdatetime[/b:c0bf3135bb], etc.) e assim o delphi converte para o tipo específico do banco.

por isso, sempre use parâmetros no caso de datas e strings, pq fica mais fácil.

para resolver o seu problema faça assim

****
procedure Tfrmconsulta.rbliberadoClick(Sender: TObject);
var
recebecodigo: string;
begin
if query.RecordCount = 0 then
Begin
rbliberado.Checked:=false;
exit;
end;
recebecodigo := querycodigo.Text;
If Not (query.RecordCount = 0) then
Begin
query.Close;
query.SQL.Clear;
query.SQL.Add(´update problemas set status = :pstatus_atual where status = :pstatus_novo and codigo = :pcodigo´);
query.SQL.parambyname(´pstatus_atual´).asstring := ´L´;
query.SQL.parambyname(´pstatus_novo´).asstring := ´P´;
query.SQL.parambyname(´pcodigo´).asstring := recebecodigo;
query.ExecSQL;
query.SQL.Clear;
query.SQL.Add(´update problemas set dtfinal = :pdatafinal where codigo = :pcodigo´ );
query.SQL.parambyname(´pdatafinal´).asdatetime := now;
query.SQL.parambyname(´pcodigo´).asstring := recebecodigo;
query.ExecSQL;
query.sql.Clear;
query.SQL.Add(´select * from problemas where status = :pstatus´);
query.SQL.parambyname(´pstatus´).asstring := ´P´;
query.Open;
query.Refresh;
query.Open;
rbliberado.Checked:=false;
end;
end;
****

qq dúvida pergunte

até


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