아시는 분은 도와주세요.
현재 oracle 7.3 NT로 Connect를 하여 Delphi 3.0으로 프로그램을 만들다가
문제가 생겼습니다.
Updatesql을 사용하여 자료를 insert, Modify, delete를 처리하려고 하여
query component 에 cached Update를 True, RequestLive 를 True로 Setting을
하고 UpdateObject에 UpdateSql component를 set하였습니다.
두개의 테이블을 join한 상태입니다(저장은 1개의 테이블에서 이루어지며
다른 1개의 테이블은 조회용입니다).
프로그램을 실행시켜 결과를 지켜보면
신규로 등록하여 처리하였을때는 정상이며
기존에 등록되어 있는 자료를 수정하였을 때도 정상적으로 동작을 합니다.
이상하게도 신규로 등록한 자료를 수정하고 저장을 할때
Update Failed라는 에러 메세지를 내보냅니다.
error 메세지는 Project xxx.exe raised exception class EDatabaseError with
message 'Update failed'. Process stopped. Use Step or Run
to continue.
이메세지가 나온후에 기존의 자료를 수정 또는 삭제를 하면 계속 같은 메세지가
나오며 새로 읽어서 작업을 진행할때 간혹가다 insert or modify 상태가 아니라는
에러 메세지가 나타납니다.
UpdateSql component를 잘못 사용해서그런지 아니면 따로 어떤 기능을 프로그래밍
해야하는지 아시는 분은 부탁을 드립니다.
|