Q&A

  • join 대신 Select , Select 사용


한번은 아무런 문제가 없는데 두번째 실행 하면 SQL문쪽에서 에러가 발생 합니다.
도대체 원인을 모르겠습니다. 델 천재님들 문제가 어떤건지 한번 봐 주세요...
에러가 발생하는 부분을 Showmessage해서 찾았는데 문법 적으로 무엇이 문제인지 모르겠습니다.

procedure thcz301pf.Loop_sql;
var n_1 : integer;
   ce_bcod,ce_pyon, ce_scod, ce_pyon1, ce_pyon2, ce_pyon3,
   ce_pyon4, ce_pyon5, ce_pyon6 : String;
Begin
with sql_num2 do
Begin
  sql_num2.Close;
  sql.Clear;
  sql.add('select us_numb, us_bcod, us_jemu, us_name, us_jday, ');
  sql.Add('(select ma_pyon from cjma where us_numb=ma_numb and
            ma_scod = ''100087'') as aa5,');
  sql.Add('(select ma_pyon from cjma where us_numb=ma_numb and
            ma_scod = ''100195'') as aa6,');
  sql.Add('us_pyon from cjus where us_jday BetWeen :s_day1 and :e_day1');
  sql_num2.Parameters.ParamByName('s_day1').Value := s_day;
  sql_num2.Parameters.ParamByName('e_day1').Value := e_day;
  sql_num2.Open;
  sql_num2.First;              ---------  여기서 계속 에러가 발생합니다...
n_1 := 0;
While Not eof do
   begin
    n_1 := n_1+1;
    table1.Append;
    table1.FieldByName('cj_no').AsString := inttostr(n_1);
    table1.FieldByName('cj_numb').AsString := FieldByName('us_numb').AsString;
    table1.Post;
    sql_num2.Next;
    App_Front ;
   end;
    table1.Refresh;
    table1.Close;
    sql_num2.Close;
end;
end;
1  COMMENTS
  • Profile
    원혁상 2004.06.19 22:16



    SQL문에 오류가 있다면 이런식으로 소스를 올리지 마시고요
    sql_num2.Open <= 이부분 위쪽에
    edit1.text := sql.text;
    이런식으로 코딩해보세요 그럼 SQL 문을 복사 할수 있습니다
    그걸 가지고 쿼리 분석기나...아니면 쿼리를 직접 날릴수 있는곳에
    붙여 넣기 하고 실행 해보세요 더 정확한 오류 메세지를 얻을수 있을
    겁니다.