Query.SQL.Add('INSERT INTO CBSFJUNP (A,B,C,D,');
Query.SQL.Add('VALUES( :i1,:i2,:i3 ,:i4');
Query.ParamByName('i1').Asstring :=MTA_CG.Cells[SET_NO,1];
Query.ParamByName('i2').Asstring :=MTA_CG.Cells[AAA_NO,1];
Query.ParamByName('i3').AsFloat :=strtofloat(MTA_CG.Cells[HUB_NO,1]);
Query.ParamByName('i4').AsFloat :=strtofloat(MTA_CG.Cells[AMT_NO,1]);
Query.EXECSQL; -> Error 발생
MTA_CG는 String Grid
Type은 A varchar2(10);
B number(10);
C number(10.6); 값은 10.987
D number(10.6); 입니다. (Oracle DB)
integer로 하면 형변환 오류가나고 Float로 하면 insert 시 operation not applicable 에러가 납니다.
Type이 unmatch나서 에러가 나는것 같은데 1.567 과 같은 Double Data를 인서트하는 방법을 알려 주십시요
execsql하기 전에 showmessage(query1.sql.text); 를
삽입해서 쿼리를 확인해 보세요....
불완전한 쿼리로 인해 일어나는 에러일 수 있습니다.
Query.ParamByName('i4').AsFloat :=strtofloat(MTA_CG.Cells[AMT_NO,1]);
showmessage(query1.sql.text); <== 추가.....
Query.EXECSQL; -> Error 발생
김윤경 께서 말씀하시기를...
> Query.SQL.Add('INSERT INTO CBSFJUNP (A,B,C,D,');
> Query.SQL.Add('VALUES( :i1,:i2,:i3 ,:i4');
> Query.ParamByName('i1').Asstring :=MTA_CG.Cells[SET_NO,1];
> Query.ParamByName('i2').Asstring :=MTA_CG.Cells[AAA_NO,1];
> Query.ParamByName('i3').AsFloat :=strtofloat(MTA_CG.Cells[HUB_NO,1]);
> Query.ParamByName('i4').AsFloat :=strtofloat(MTA_CG.Cells[AMT_NO,1]);
> Query.EXECSQL; -> Error 발생
>
> MTA_CG는 String Grid
> Type은 A varchar2(10);
> B number(10);
> C number(10.6); 값은 10.987
> D number(10.6); 입니다. (Oracle DB)
> integer로 하면 형변환 오류가나고 Float로 하면 insert 시 operation not applicable 에러가 납니다.
> Type이 unmatch나서 에러가 나는것 같은데 1.567 과 같은 Double Data를 인서트하는 방법을 알려 주십시요
>
>
>
>
>