Q&A

  • Update 및 Delete가 안 되는데.. 이유가 뭔지..
편집기를 짜고 있습니다.
편집기 창을 두개 띄워 놓고 한 창에서 수정을 하면 다른 창에서
수정한 내용이 곧바로 보여야 하는데, 수정 전 자료가 계속
보입니다.

그리고 수정한 창을 종료해야만 다른 창에서 수정 후 자료가
보입니다.

업데이트 및 딜리트 쿼리는 다음과 같은 형식으로 사용합니다.
-------------------------------------------------------
Query := TQuery.Create( nil );

if DMMain.Decrypt(PassWd, 23457) = LoginPass then begin
    Query.Close;
    Query.Sql.Clear;
    Query.Sql.Append(' Update SDW_S_User Set Passwd_Cnt = 0 Where User_Id = :pUserId ');
    Query.DatabaseName := SDW_DM_Alias;  <- 공유하는 DataBase이름 입니다.
    Query.ParamByName('pUserId').AsString := LoginId;
    Query.ExecSql;

--------------------------------------------------------
이런식이고.. 쿼리구문은 try finally문을 사용하여 Query를 Close,
Free 를 시켜 줍니다.

왜 실시간으로 반영이 안 되는 건지 모르겠습니다.
작업한게 디비에 반영되도록 하는 옵션이 따로 있는 건가요?
참.. BDE에서 Shared AutoCommit으로 설정 했습니다.

도와주세여..ㅜ_ㅜ
1  COMMENTS
  • Profile
    박창범 2002.09.18 01:57
    실시간으로 반영이 된다는 것은 한 연결을 유지하고 있어야 하는건데
    다른창에서 또 다른 Query 또는 Table 로 또 다른 연결을 하고 있었을 경우
    반드시 Update 또는 Delete 또는 Insert 시 보여주고 있는 Query 나 Table
    을 새로고쳐주어야 합니다.

    즉, 보여주고 있는 창의 Query 나 Table 을 Refresh 하시거나 다시 Close
    Open 을 해보시는것이 좋을것 같군요.