Q&A

  • 쿼리 컴포넌트 문제인데요..


델피 가족 여러분 안녕하세요.....

그리 큰 문제는 아닐수도 있는데..

생각하기 나름이거든요...

큰 문제라고 생각하면 큰 문제가 되는 문제입니다.

쿼리에서 삽입을 해서 결과를 다른 쿼리에서 뿌려주거든요...

근데.. 디비에서 데이타를 뽑아서 뿌려줍니다..

프로그램을 하면서 실행을 시키면 아무 문제가 없더라구요..

디비에서 확인을 하기 전까지는...

문제는 쿼리로 삽입을 하고,,,

목록까지 봤는데... 제대로 됐더라구요..

그런데.. 프로그램을 종료하지 않고,,,

디비에서 확인을 해봤더니..

디비에는 안들어가 있더라구요.. ^^;

어찌나 황당하던지..

문제는 프로그램이 종료되지 않는 이상은 디비에 삽입이 되지 않는 다는 거에요..

이문제.. 해결해 주실 분이 꼭 있을 거라고 생각합니다. ^^

그럼 델피 가족 여러분 즐코하세요..

1  COMMENTS
  • Profile
    정지호 2000.08.04 22:01
    김만성 wrote:

    >

    > 델피 가족 여러분 안녕하세요.....

    > 그리 큰 문제는 아닐수도 있는데..

    > 생각하기 나름이거든요...

    > 큰 문제라고 생각하면 큰 문제가 되는 문제입니다.

    > 쿼리에서 삽입을 해서 결과를 다른 쿼리에서 뿌려주거든요...

    > 근데.. 디비에서 데이타를 뽑아서 뿌려줍니다..

    > 프로그램을 하면서 실행을 시키면 아무 문제가 없더라구요..

    > 디비에서 확인을 하기 전까지는...

    > 문제는 쿼리로 삽입을 하고,,,

    > 목록까지 봤는데... 제대로 됐더라구요..

    > 그런데.. 프로그램을 종료하지 않고,,,

    > 디비에서 확인을 해봤더니..

    > 디비에는 안들어가 있더라구요.. ^^;

    > 어찌나 황당하던지..

    > 문제는 프로그램이 종료되지 않는 이상은 디비에 삽입이 되지 않는 다는 거에요..

    > 이문제.. 해결해 주실 분이 꼭 있을 거라고 생각합니다. ^^

    > 그럼 델피 가족 여러분 즐코하세요..



    db종류가 뭔지는 모르겠지만 프로그램에서 실행한 sql문이

    db에도 반영되기 위해서는 commit를 해주어야 합니다.

    그렇지 않으면 물리적으로는 sql문 결과가 반영되지 않게 됩니다.



    database1.starttransaction;



    try

    //sql문 실행

    except

    on E:EdatabaseError do

    begin

    showmessage('에러 '+#13 + E.message);

    database1.rollback;

    //기타에러처리

    exit;

    end;

    end;//try end



    database1.commit;

    이런 식으로요...

    주의하실 점은 starttransaction은 commit나 rollback을 반드시 만나야 한다는

    점입니다....