Rollback 하지말고 진행하세요.
고민남~~~ 님이 쓰신 글 :
: Try
: Try
:
: ....
: Database1.StartTransaction;
: .......
: 스트링크리드에 있는 데이타를 불러와서
: DB테이블에 저장
: .......
:
: Except
:
: {저장중 에러가 발생하면 에러로그에 저장}
:
: AssignFile(ErrLogfile, LogFileName);
: Append(ErrLogfile);
:
: Writeln(ErrLogfile, ErrMsg+ ' 데이타 저장오류 -'+err.message);
: // ShowMessage('작업이 중지되었습니다. Data확인요망-'+err.message);
: CloseFile(ErrLogfile);
:
: //롤백
: Database1.Rollback;
:
: end;
: Finally
: Database1.Commit;
: Query1.close;
: end;
:
: 이런 식으로 구성이 되어있습니다.
: 현재는 그리드의 레코드들을 한줄 한줄 가져다가 db에 저장을 할때 중간에 에러가 발생할 경우
: 거기서 멈추어 버린다는 것입니다.
: 제가 저녁에 퇴근하면서 프로그램을 실행시켜놓고 갈려고 하는데
: 중간에 에러가 나면 멈추어버리는 문제로 올릴려는 데이타를 모두 올리지 못하고 있습니다.
:
: 혹시 에러가 나면 에러로그를 저장하고 해당 레코드는 건너뛰어 다음 레코드로 진행해서
: 끝까지 업데이트가 될 수 있는 방법이 있는지요..
: 여기저기 글들을 검색해 보았는데...딱히 제가 원하는 답을 못찾겠습니다.
: 그럼 고수님들의 의견을 기다립니다.
|