Q&A

  • 유저가 직접 SQL문으로 조회하기..
유저가 Memo에 직접 쓰는 SQL문 이 아래와 같다고 합시다
select * from testdb



tsql := Memo1.Text;
if tsql <> '' then begin
   try
     with Qurry1 do begin  
        close;
        sql.Clear;
        sql.Add(' '+ tsql +' ');
        Open;
     end;
    Except
      Beep();
      showmessage('SQL문이 적합하지 않습니다.!!');
      Qurry1.close;
      Exit;
    end;
end else
begin
   Beep();
end;

위처럼 하면 그리드에 조회된 내용이 나타납니다.

SQL문이 위 한줄처럼 간단하면 에러시 간단히 첵크 해 볼 수 있습니다.
그러나 문제는 SQL문이 복잡할때 입니다. 필드명이 많고 조인도 있고 SUM도 있고....

질문: SQL문에서 Error가 날 경우 그 부분을 알려주거나 Check할 수 있게 하는 방법
이 없을까요?
울회사 직원이 다른 회사에서는 그렇게 되어 어떤부분에서 에러가 나는지 금방
알 수 있었다고 우리것도 그것처럼 해 달라네요.... 쩝...

고수님들 보시고 가능하다면 가르쳐 주십시요.. 감사합니다.
1  COMMENTS
  • Profile
    KDDG_hyun 2003.02.12 19:01
    아래 트라이문 없이 해보세요

    그냥 쿼리 넣는거만 하면 되내요 저는;;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      with Query1 do begin
        Close;
        Sql.Clear;
        sql.Text := Memo1.Text;
        Open;
      end;
    end;

    end.




    • ji
    • 2003.02.12 23:46
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 양충규
    • 2003.02.12 22:35
    • 2 COMMENTS
    • /
    • 0 LIKES
    • KDDG_BaSTaD
      2003.02.14 06:19
      ==> Indy는 아시는 것처럼 Block Type Socket입니다. Block과 Non-Block사이에는 서로 이견이 많지만,...
    • 구창민
      2003.02.13 00:01
      안녕하세요? 구창민입니다. 그 Timer 가 하는 행동을 똑같이 하는 Thread 를 하나 만드시면 됩니다. ...
    • 이정택
    • 2003.02.12 22:04
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김형식
      2003.02.13 01:25
      캐릭터셋 문제가 아닐까 싶네요. 폰트 다이얼로그에서 캐릭터셋을 한글로 맞춰보세요.
    • 구창민
      2003.02.12 22:33
      TreeView 의 Font 의 스크립트를 한글로 바꾸어 보세여.. 정답이 아닐수도 있습니다. 즐거운 프로그...
    • 구니
    • 2003.02.12 21:50
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 머슴
      2003.02.13 01:21
        http://www.oracle.com/kr/download/index.html?databases.html   여기 한번 가...
    • 송흥순
    • 2003.02.12 21:06
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 갈매기
      2003.02.12 21:28
      두대의 컴이 os가 틀리다면 그런 문제가 발생합니다. 예를 들자면 한대는 win98이고 한대는 nt계열이라면 ...
    • 나현찬
    • 2003.02.12 21:03
    • 2 COMMENTS
    • /
    • 0 LIKES
    • KDDG_ZZOM
      2003.02.12 23:57
      퀵리포트의 최대단점이라고 말할수있네요... 그래도 레이저면 어느정도 맞겠는데... 잉크젯이나 도트가 있...
    • KDDG_Cali
      2003.02.12 22:21
      이게 정상인지 비정상인지는 모르겠으나 기종이 틀리다면 잘 안 맞더라고요. 같은 HP라도 틀리게 나오죠.....
    • J
      2003.02.12 21:37
      update employee set dept_code = emp_code 간단하죠??
    • 강석찬
      2003.02.12 21:34
      procedure TForm1.Button1Click(Sender: TObject); begin   with query1 do begin  &nbs...
    • 구창민
      2003.02.12 22:36
      오래전에 이미 질문이 많이 나오던 내용이군여 검색을 하셨더라면 손쉽게 해결하셨을 텐데.. 아래 ...
    • 한경섭
      2003.02.13 00:24
      정말 감사합니다. 맞습니다, 맞고요. 그럼 2번째(DBGrid내의 Combobox클릭)는 어떻게 해야하는지 알려주...
    • 강인규
      2003.02.12 20:53
      Close 와 Open 함수의 원형입니다. procedure TDataSet.Open; begin   Active := True; en...
    • Galaxy
    • 2003.02.12 19:01
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김민수
    • 2003.02.12 18:57
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2003.02.12 19:54
      안녕하세여? 구창민입니다. 파일의 생성일자가 곧 파일을 컴파일한 날짜가 아닐까여? 컴파일을 하...
    • 최용일
      2003.02.12 23:50
      제가 너무 어렵게 생각했나 보네요... 사용자가 파일생성일을 변경하거나 하면 바뀌어지니까... 별의미...
    • 정보근
      2003.02.13 19:20
        맞아요!!!   생성일이 바뀌니 바로 문제가 되네요..   FTP로 다운...
    • 정보근
      2003.02.12 20:37
        도움주셨어 감사합니다.   덕분에 문제는 해결이 된것 같읍니다.   ...
    • 구창민
      2003.02.12 22:31
      아래 코드들을 참고하시면 되겠네여~ 항상 즐거운 프로그래밍 하시길~ procedure TFileInfoForm.GetF...
    • 정보근
      2003.02.12 23:43
      정말 감사합니다. - 내용무
    • 최용일
      2003.02.12 19:40
      안녕하세요. 최용일입니다. 제가 생각하기에는 프로그램에서 직접 컴파일한 날짜를 가져오는 방법은 없...
    • • • •
    • 열심히
      2003.02.12 20:44
      오라클안에 BIN 폴더안에 해당 파일들이 들어있습니다... 오라클을 깔면 패스는 잡히니깐 위 답글을 다...
    • 머슴
      2003.02.12 19:29
      기본적으로 BDE를 이용하시려면  SQL*Net를 설치가 되어 있어여 합니다. (보통 설치후 재...
    • gokick
      2003.02.12 19:23
      오라클 버전에 따라 틀립니다. 오라클 설치하셨다면 오라클 경로의 Bin으로 Path가 잡혀 있는지 확인 하...
    • 이병훈
      2003.02.13 23:38
      "오라클 설치하셨다면 오라클 경로의 Bin으로 Path가 잡혀 있는지 확인"의 말뜻을 잘 모르겠습니다. 유닉...
    • 5565
    • 2003.02.12 08:12
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2003.02.12 19:42
      안녕하세요. 최용일입니다. 메일로 답변드렸는데... 또 보내요... var     Key...
    • 안중태
      2003.02.13 00:46
      최용일님께서 알려주신대로 그대로 했습니다. 밑에는 Ctrl+L 인데 제가 Ctrl+O로 고치고 메모장을 뛰우고...
    • 최용일
      2003.02.13 10:20
      안녕하세요. 최용일입니다. 그냥 Ctrl-O누르는거랑 메뉴의 엑셀레이터키인 Ctrl-O를 누르는거하고는 많...
    • 아폴론
    • 2003.02.12 04:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • KDDG_hyun
      2003.02.12 19:01
      아래 트라이문 없이 해보세요 그냥 쿼리 넣는거만 하면 되내요 저는;; procedure TForm1.Button1Clic...
    • KDDG_ZZOM
      2003.02.12 04:15
      질문의 요지를 잘모르겠네요... 우선 iCount값이 0일때 계속 호출해야되면 for문보다는 while문으로 돌리...
    • 초보에요.
      2003.02.12 21:00
      질문의 어설픔에도 불구하고.. 제가 의도한 대답을 알려주셔서.. 감샤감샤..