Q&A

  • [질문]인터베이스 insert 오류
try
    with q_cust do
    begin
      close;
      sql.clear;
      sql.text:= ' insert into  customer   '+
                 ' (C_NO,C_CHOICE,C_NAME,C_TEL,C_FAX,C_ADDRESS,C_REAMRK,C_BONJEOM) '+
                 '  values(:PC_NO,:PC_CHOICE,:PC_NAME,:PC_TEL,:PC_FAX,:PC_ADDRESS,:PC_REAMRK,:PC_BONJEOM) ';
      parambyname('PC_NO').asstring  := '3';
      parambyname('PC_CHOICE').AsString := ls_Tmp;
      parambyname('PC_NAME').asstring := trim(ED_Cname.text);
      parambyname('PC_TEL').asstring := trim(ed_tel.text);
      parambyname('PC_FAX').asstring    := trim(ed_fax.text);
      parambyname('PC_ADDRESS').asstring    := trim(ED_Add.text);
      parambyname('PC_REAMRK').asstring := '비고';
      parambyname('PC_BONJEOM').asstring := crbon;
      execsql;
    end;
   except
      showmessage('확인후 다시 입력하여 주세요');
      abort;
   end;

필드는 모두 char 로 했습니다...



에러 메시지는 General Sql error arithmtic exception numeric overflow,or string truncation
3  COMMENTS
  • Profile
    ez.J 2010.06.04 02:39
    insert into customer (C_NO,C_CHOICE,C_NAME,C_TEL,C_FAX,C_ADDRESS,C_REAMRK,C_BONJEOM) values(:PC_NO,:PC_CHOICE,:PC_NAME,:PC_TEL,:PC_FAX,:PC_ADDRESS,:PC_REAMRK,:PC_BONJEOM);
    전부 char로 설정하고나서 쿼리 잘 들어가지는지요?... 저는 안들어가는데...
    C_NO는 int형으로 바꾸니 잘되네요...^^ 저도 역시 sql초짜라;;
    insert into customer values(:PC_NO,:PC_CHOICE,:PC_NAME,:PC_TEL,:PC_FAX,:PC_ADDRESS,:PC_REAMRK,:PC_BONJEOM);
    이렇게하셔도 됩니다 ^^
  • Profile
    작은자 2010.06.04 02:57
    아니요 아직 인서트 한개도 못했어요 .... 필드 타입을 integer 로 바꿨는데도 안되네요....
  • Profile
    nilriri™ 2010.06.04 07:28
    실제로 파라미터에 들어가는값을 대입해서 토드같은 툴에서 화긴해 보세요. 실제 자릿수보다. 자릿수가 긴 데이터가 입력되서 잘렸다는 오류메시지 인거 같습니다.