안녕하세요. 여기저기 찾아보는데 이유를 못찾아서 올립니다.
매우 초보적인 실수 일듯한데... 너무 쉬운문제인지 답을 못 찾겠네요.
qrInsert는 Uni.TUniQuery 이고 connection은 TUniConnection입니다
qrInsert.SQL.Text := 'insert into XLOG_20121030 (LOGSEQ, CARTYPE) '
+ ' values ( :LOGSEQ, :CARTYPE)';
inc(FSequence);
qrInsert.ParamByName('LOGSEQ').AsInteger := FSequence;
qrInsert.ParamByName('CARTYPE').AsInteger := 11;
qrInsert.ExecSQL;
위의 코드를 실행하면 ORA-01438...
자리수에 비해 큰 값이 들어왔다고 하는데...
CARTYPE은 오라클에서 2자리의 숫자로 지정했습니다.
CARTYPE 부분을 AsInteger, AsSmallInt, AsByte...
혹은 값을 "11" 대신 "0"으로 해도 안들어가네요.
참고할만한 자료나 원인을 좀 알려주시면 정말 감사하겠습니다.
...
|