Q&A

  • 토드에서는 잘도는데 델파이에서 돌리면 FROM 키워드가 있어야할 자리에 없다고 나옵니다..
TOAD를 이용해서 돌려보면 문제 없이 결과가 나오는 쿼리가

델파이에서 돌리면 FROM 키워드가 있어야할 자리에 없다고 나옵니다..

전체 쿼리는 너무 길어서 못 올리구요...

...

    SQL.Add('                Union All                                                              ');
    SQL.Add('                Select :YYYYMM Yyyymm, B.Partcd Partcd, ''905'' Kukcod,                  ');
    SQL.Add('                       0 Dexamt,                                                       ');
    SQL.Add('                       0 Dimamt                                                        ');
    SQL.Add('                From   PartKuk A, Koacod B                                             ');
    SQL.Add('                       Where  A.Kukcod = ''905''                                              ');
    SQL.Add('                     And    Substr(B.Partcd,5,1) <> ''0''                                     ');
    SQL.Add('                And    B.Partcd <> ''XXXXX''                                           ');

...

이 부분에서 에러가 나느것 같습니다...

도대체 무엇이 문제인지.... 미치겠습니다.. ㅜ0ㅜ

이런 문제 해결방법 알고 계신분 답변 기다리겠습니다... (__)
4  COMMENTS
  • Profile
    nilriri™ 2007.01.05 01:54
    MEMO1.TEXT := SQL.TEXT;

    Open이나 Excute하기전에 위와같이 현재 쿼리 문장이 최종적으로 어떻게 결합후 실행되는지 확인해보세요.
    보여주신 쿼리상에서는 별 문제가 없는거 같군요...

    수고하세요.

    >TOAD를 이용해서 돌려보면 문제 없이 결과가 나오는 쿼리가
    >
    >델파이에서 돌리면 FROM 키워드가 있어야할 자리에 없다고 나옵니다..
    >
    >전체 쿼리는 너무 길어서 못 올리구요...
    >
    >...
    >
    >    SQL.Add('                Union All                                                              ');
    >    SQL.Add('                Select :YYYYMM Yyyymm, B.Partcd Partcd, ''905'' Kukcod,                  ');
    >    SQL.Add('                       0 Dexamt,                                                       ');
    >    SQL.Add('                       0 Dimamt                                                        ');
    >    SQL.Add('                From   PartKuk A, Koacod B                                             ');
    >    SQL.Add('                       Where  A.Kukcod = ''905''                                              ');
    >    SQL.Add('                     And    Substr(B.Partcd,5,1) <> ''0''                                     ');
    >    SQL.Add('                And    B.Partcd <> ''XXXXX''                                           ');
    >
    >...
    >
    >이 부분에서 에러가 나느것 같습니다...
    >
    >도대체 무엇이 문제인지.... 미치겠습니다.. ㅜ0ㅜ
    >
    >이런 문제 해결방법 알고 계신분 답변 기다리겠습니다... (__)
  • Profile
    팅이 2007.01.05 01:56
    물론 다 해봤습니다... ㅜ.ㅜ

    실행시켜서 최종적으로 뽑은 쿼리를 토드에 돌리면 잘돌아갑니다... -_-ㅋ

    하지만~ 델파이에서는 안된다는거.... ㅜ.ㅜ

  • Profile
    착한천사 2007.01.06 06:21
    혹시 Delphi 버젼에 따른 ODBC 혹은 ADO의 문제로
    즉, Driver의 문제로인한 Parsing 에러가 아닐까요?
    SQL문장은 에러가 없어 보입니다.
    혹시, :YYYYMM 부분을 '아무문자'로 바꿔보시고
    테스트 해 보세요..



  • Profile
    김영구 2007.01.06 19:45
    아래처럼 Add 문장을 사용하지 마시고 string변수에 SQL문장을 기술해서 해보세요.
    sSQL : string;

    sSQL := 쿼리문장;
    SQL.Text := sSQL;