Mais uma tentativa.......serah q alguem consegue agora?

14/02/2003

0

Esto usando essa rotina para atualizar o bd interbase com acesso dbexpress, qdo executo a ultima linha dah o seguinte erro:

[b:133cd2e644]Incorrect values within SQLDA structure[/b:133cd2e644]
with dm1.qryUpdt do
begin
Close;
SQL.Clear;
SQL.Add(´Update Historico´);
SQL.Add(´ Set HR_SAIDA = :HR_Saida,´);
SQL.Add(´ DT_SAIDA = :DT_Saida´);
SQL.Add(´Where CO_Historico = :Codigo´);
ParamByName(´HR_Saida´).AsDateTime := StrToDateTime(dfmPrincipal.lblHora.Caption);
ParamByName(´DT_Saida´).asDateTime := StrToDateTime(dfmPrincipal.lblData.Caption);
ParamByName(´Codigo´).asInteger := Codigo;
ExecSQL(True);


K-rol

K-rol

Responder

Posts

14/02/2003

K-rol

obs:
jah tentei passar a hora somente como time, como string
e a data tb.....soh como data, como string


Responder

14/02/2003

Anonymous

Como está em sua tabela os campos DT_SAIDA e HR_SAIDA


Responder

14/02/2003

K-rol

Dt_Saida = Date
HR_Saida = Time


Responder

14/02/2003

Anonymous

Tente fazer o seguinte, deixe a instrução SQL fixa na query, depois entre na propriedade params da Query de difina o tipo de cada um:
Dt_Saida como ftDate
HR_Saida como ftTime
Codigo como ftInteger

daí no procedimento vc faz apenas isso

with dm1.qryUpdate do
begin
Close;
ParamByName(´Dt_Saida´).Value := StrToDate(frmprincipal.lbldata.caption);
ParamByName(´HR_Saida´).Value := StrToTime(frmprincipal.lbldata.caption);
ParamByName(´Codigo´).Value := codigo;
ExecSQL;
end;

v c vai funcionar, senão manda um e-mail pra mim
nebrio@ig.com.br

até mais


Responder

14/02/2003

Simas

with dm1.qryUpdt do
begin
Close;
Clear;
SQL.Add(´Update Historico´);
SQL.Add(´ Set HR_SAIDA = ´´´ + fmPrincipal.lblHora.Caption + ´´´´);
SQL.Add(´ DT_SAIDA = ´´´ + dfmPrincipal.lblData.Caption + ´´´´);
SQL.Add(´Where CO_Historico = ´ + IntToStr(Codigo));
ExecSQL;
...
end

So tem que verificar qual o formato de data/hora q tu esta passando se e igual ao formato do banco que esta usando....


Responder

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

Aceitar