Q&A

  • ADO 뭐가 문제인지 고수님들 도움부탁 드립니다.
안녕하세요?

ADO를 사용했고, Office 2000에 깔리는 Access 를 사용하여 MDB 를 만들었습니다.
델 7, xp home edition 에서 작업 했습니다.

작업한 컴에서 잘동작합니다.

러시아 윈도우 2000 에서 잘 동작 합니다.

러시아 윈도우 XP 에서만 사용하려 하면 insert 가 안됩니다.

스레드 CREATE 할때 ADO CONNECTION 만들어 사용하구요,
스레드 안에서 ADOQUERY 만들어 사용 하게 만들었습니다.

SELECT, DELETE 는 되는데, INSERT만 안됩니다..

try
    insert
except
   여기로 옵니다.....  insert 시 러시아 윈도 xp 에서만.
end;


어떻게 해결해야 할지 너무 난감합니다..
경험해 보신분 도움 부탁 드립니다..
러시아 출장와서 해결이 되어야 귀국할 상황입니다...

고수님들.. 경험하신분들 도움 부탁 드립니다...



//////insert 문을 아래와 같이 썼습니다.
WDATETIME := W_DATETIME := Formatdatetime('dd-MM-yyyy hh:nn:ss',now());
//WDATETIME <- STRING TYPE

WITH ADOQRY DO
        BEGIN
         CLOSE;
         SQL.CLEAR;
         SQL.Add('INSERT INTO [TSMS_RCV_MOBILE_UIM] '+
                ' ([MSG_ID],[RCV_DATE],[SENDER_NUM],[RCV_MSG],[F_DATE], [STATUS]) '+
                ' VALUES '+
                ' ( '+
                '  :SMSG_ID, :SRCV_DATE, :SSENDER_NUM, :SRCV_MSG, '''+W_DATETIME+''', :SSTATUS) '+
                ' ');

              Parameters.ParamByName( 'SMSG_ID' ).Value := MDB_RCV_MSG_ID;
              Parameters.ParamByName( 'SRCV_DATE' ).Value := MDB_RCV_DATE;
              Parameters.ParamByName( 'SSENDER_NUM' ).Value := MDB_SENDER_NUM;
              Parameters.ParamByName( 'SRCV_MSG' ).Value := UTF8DECODE(pchar(MDB_MSG));
              Parameters.ParamByName( 'SSTATUS' ).Value := DB_STATE;

              SELF.mConn.BeginTrans;
              ExecSQL;
              SELF.mConn.CommitTrans;

         END;// SQL
        EXCEPT
           on E: Exception do begin
              if SELF.mConn.InTransaction then
                 begin
                   SELF.mConn.RollbackTrans;
                 end;
               result := false;
               exit;
           end;
        END; //TRY END SQL

3  COMMENTS
  • Profile
    윤수아 2006.02.14 04:51
    mdac 로 검색 한번 해보실래요?
    델파이 7을 깔고 하면 된다는 것과... 다른 xp에서는 된다는 점 등등을 보건데..소스 오류는 아니실 듯하고요..
    우선 여기서 저걸로 검색해보세요....
  • Profile
    성더기 2006.02.14 03:47
    혹시 ADO버전 차이 때문일수도 있겠네요..

  • Profile
    나도초급 2006.02.16 10:42
    안녕하세요?

    이것저것 무지하게 헤메었는데요..

    러시아 Office(Access) 를 깔고서 mdb 새로 만들고 하니까 되네요...

    러시아 랑 쓰는 방식이 다른거 같애요..

    허무....

    답변 감사합니다.