Erro no Update com Firebird

Firebird

10/06/2004

Boa Noite, estou usando o Firebird 1.5 com o componente MDO, quando tento dar um UPDATE na minha Table, dá a seguinte msg... segue meu codigo:


 with MDOQuery1 do
 begin
  SQL.Clear;
  Params.Clear;

  SQL.Add(´UPDATE "CB02´ + Form1._xFilial + ´"´);
  SQL.Add(´SET´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOMECOMPLETO" = :"NOMECOMPLETO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NATURACIDADE" = :"NATURACIDADE",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NATURAUF" = :"NATURAUF",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOMEPAI" = :"NOMEPAI",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOMEMAE" = :"NOMEMAE",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."ESTCIVIL" = :"ESTCIVIL",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOMECONJUGE" = :"NOMECONJUGE",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."GRAUINSTRUCAO" = :"GRAUINSTRUCAO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."DATANASCIMENTO" = :"DATANASCIMENTO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."SEXO" = :"SEXO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."RACA" = :"RACA",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOCALCA" = :"NOCALCA",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOCALCADO" = :"NOCALCADO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."NOCAMISA" = :"NOCAMISA",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."FOTO" = :"FOTO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."ENDERECO" = :"ENDERECO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."COMPLEMENTO" = :"COMPLEMENTO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."BAIRRO" = :"BAIRRO",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."CIDADE" = :"CIDADE",´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."UF" = :"UF",´);
  . 
  . . .
  .
  SQL.Add(´WHERE´);
  SQL.Add(´ "CB02´ + Form1._xFilial + ´"."RECNO" = ´ + #39 + Edit1.Text + 39);


  Params.BeginUpdate;
  Params.Items[0].AsString := Edit2.Text;
  Params.Items[1].AsString := Edit3.Text;
  Params.Items[2].AsString := Edit4.Text;
  Params.Items[3].AsString := Edit5.Text;
  Params.Items[4].AsString := Edit6.Text;
  Params.Items[5].AsString := Edit7.Text;
  . . . 
  Params.Items[47].AsInteger := GetCheck(CheckBox1.Checked);
  Params.Items[48].AsInteger := GetCheck(CheckBox2.Checked);
  . . .
  Params.Items[59].AsFloat := JvCurrencyEdit1.Value;
  . . . 
  Params.EndUpdate;

  ExecSQL;
 end;


Dá a seguinte msg de erro:
[b:7e683b0798]Dynamic SQL Error
SQL error code = -303
arithmetic exception, numeric overflow, or string truncation.[/b:7e683b0798]

Que erro é esse, e como posso soluciona-lo ?

P.s.: O numero de parametros estao corretos tanto no SET quando no PARAMS...

Desde já agradeço,


Titanius

Titanius

Curtidas 0
POSTAR