Q&A

  • 조건에 맞게 DB불러오기(SQL)
고수님들 안녕하세요.. 건강들 하시죠..

간단한 문제인 것 같은데 잘 몰라 고수님의 고견을 듣고자 글을 올립니다.



두개의 DB가 존재하고 1번 DB는 “edit1의 값”에 의해 필터 된 내용을 DBGrid에 의해

표시되고 2번 DB도 edit1의 값에 맞는 조건의 항목들을 다른 여러 Edit창에 표시하게 할려고 하는데 잘 않네요..



1번 DB는 DBGrid에는 잘 표현 되는데 2번 DB는 Edit창에 표시가 잘 안되네요..



참고로 부끄럽지만 무식한 방법으로 했는데 좀 보아 주시와요..



// edit의 조건에 따라 DBGrid의 내용이 표시된는 이벤트

procedure TForm1.Button1Click(Sender: TObject);

var

SNfilter : string;

begin

// 관리번호 edit란에 아무것도 입력되지 않을 시 경고메세지

if (edit1.text ='') then

ShowMessage('관리번호를 입력 하세요')

else begin

Query1.Open;

SNfilter := 'SuperNo=''' + edit1.text +'''';

Query1.Filter := SNfilter;



// 아래부분을 어떻게 처리해야 할지 모르겠네요....



// DB(2번 DB)에 있는 장비내역을 edit창에 표시

Query2.Open;

if edit1.text= Query2.FieldByName('SuperNo').Asstring then



// 참고로 Query2프라퍼티에 있는 SQL에는

// Select * from ListTable.db로 되어 있음



//표시될 Edit창

Edit3.text := Query2.FieldByName('NAME').AsString;

Edit4.text := Query2.FieldByName('MODEL').AsString;

Edit5.text := Query2.FieldByName('SERIALNO').AsString;

Edit6.text := Query2.FieldByName('MANUFACTURE').AsString;

Edit7.text := Query2.FieldByName('DATEMANU').AsString;

Edit8.text := Query2.FieldByName('OFFER').AsString;

Edit9.text := Query2.FieldByName('CONTACT').AsString;

Edit10.text := Query2.FieldByName('DATEOFFER').AsString;

Edit11.text := Query2.FieldByName('PERIOD').AsString;

Edit12.text := Query2.FieldByName('PRICE').AsString;

Edit13.text := Query2.FieldByName('VALUE').AsString;

Edit14.text := Query2.FieldByName('POINT').AsString;

Edit15.text := Query2.FieldByName('A').AsString;

Edit16.text := Query2.FieldByName('B').AsString;

Edit17.text := Query2.FieldByName('C').AsString;

end;

end;



1  COMMENTS
  • Profile
    김유승 2001.01.12 01:50
    이기코알라 wrote:

    > 고수님들 안녕하세요.. 건강들 하시죠..

    > 간단한 문제인 것 같은데 잘 몰라 고수님의 고견을 듣고자 글을 올립니다.

    >

    > 두개의 DB가 존재하고 1번 DB는 “edit1의 값”에 의해 필터 된 내용을 DBGrid에 의해

    > 표시되고 2번 DB도 edit1의 값에 맞는 조건의 항목들을 다른 여러 Edit창에 표시하게 할려고 하는데 잘 않네요..

    >

    > 1번 DB는 DBGrid에는 잘 표현 되는데 2번 DB는 Edit창에 표시가 잘 안되네요..

    >

    > 참고로 부끄럽지만 무식한 방법으로 했는데 좀 보아 주시와요..

    >

    > // edit의 조건에 따라 DBGrid의 내용이 표시된는 이벤트

    > procedure TForm1.Button1Click(Sender: TObject);

    > var

    > SNfilter : string;

    > begin

    > // 관리번호 edit란에 아무것도 입력되지 않을 시 경고메세지

    > if (edit1.text ='') then

    > ShowMessage('관리번호를 입력 하세요')

    > else begin

    > Query1.Open;

    > SNfilter := 'SuperNo=''' + edit1.text +'''';

    > Query1.Filter := SNfilter;

    >

    > // 아래부분을 어떻게 처리해야 할지 모르겠네요....

    >

    > // DB(2번 DB)에 있는 장비내역을 edit창에 표시

    > Query2.Open;

    > if edit1.text= Query2.FieldByName('SuperNo').Asstring then

    >

    > // 참고로 Query2프라퍼티에 있는 SQL에는

    > // Select * from ListTable.db로 되어 있음

    >

    > //표시될 Edit창

    > Edit3.text := Query2.FieldByName('NAME').AsString;

    > Edit4.text := Query2.FieldByName('MODEL').AsString;

    > Edit5.text := Query2.FieldByName('SERIALNO').AsString;

    > Edit6.text := Query2.FieldByName('MANUFACTURE').AsString;

    > Edit7.text := Query2.FieldByName('DATEMANU').AsString;

    > Edit8.text := Query2.FieldByName('OFFER').AsString;

    > Edit9.text := Query2.FieldByName('CONTACT').AsString;

    > Edit10.text := Query2.FieldByName('DATEOFFER').AsString;

    > Edit11.text := Query2.FieldByName('PERIOD').AsString;

    > Edit12.text := Query2.FieldByName('PRICE').AsString;

    > Edit13.text := Query2.FieldByName('VALUE').AsString;

    > Edit14.text := Query2.FieldByName('POINT').AsString;

    > Edit15.text := Query2.FieldByName('A').AsString;

    > Edit16.text := Query2.FieldByName('B').AsString;

    > Edit17.text := Query2.FieldByName('C').AsString;

    > end;

    > end;







    _______________________________________________________________________________

    Query2가 여러건 조회된 건 같은데

    while 문이나 For문을 사용해서 처음부터 하나씩 검색해야 될거같네요..



    대충

    Query2.First; //처음레코드로 이동

    While Not Query2.Eof Do

    begin

    if edit1.text= Query2.FieldByName('SuperNo').Asstring then

    edit3.text = .....



    //맨마지막에

    Query2.Next //다음레코으로이동

    end;



    그리고 이 방식보다 Query2의 select문에 조건을 줘어서

    해당 조건에 일치하는 한건만 select해서 if문 없이 바로 edit 하는 게

    더 좋은것 같네요

    >

    • 이성훈
      2001.01.12 02:00
      제가 보기에는 함수를 잘못 쓰시건 같은디 StrToInt함수를 쓰세요... 참고로 StrToIntDef함수의 사용법...
    • xdelphi
      2001.01.12 01:53
      델파이 초보.. wrote: > 전 델파이 초본데...이게 잘 안되네여...db에 연결해서 insert 하려구 했는데... ...
    • 델파이 초보..
      2001.01.12 02:03
      xdelphi wrote: > 델파이 초보.. wrote: > > 전 델파이 초본데...이게 잘 안되네여...db에 연결해서 inse...
    • 성더기
      2001.01.12 23:41
      확인해 보셈..
    • 김유승
      2001.01.12 02:24
      델파이 초보.. wrote: > xdelphi wrote: > > 델파이 초보.. wrote: > > > 전 델파이 초본데...이게 잘 ...
    • 김유승
      2001.01.12 01:50
      이기코알라 wrote: > 고수님들 안녕하세요.. 건강들 하시죠.. > 간단한 문제인 것 같은데 잘 몰라 고수님...
    • 김현우
    • 2001.01.12 01:22
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 화랑
      2001.01.16 05:47
      DHTMLEdit... 저도 조금밖에서 써질 않아서 잘 모르는데요.. 엄청 기능이 많던데요.. 잘하면.. ...
    • xdelphi
      2001.01.12 01:13
      델피언 wrote: > 체크박스가 10개가 있으면 버튼을 눌렀을때 체크되어있는것이 몇개인지 > 알수있는방법...
    • 과객
    • 2001.01.12 00:30
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 정성훈
      2001.01.12 02:09
      과객 wrote: > 컴포넌트를 정상적으로 잘 등록했습니다. > 그런데 문제는 등록된 컴포넌트가 아무런 이미...
    • 병부잡이
      2001.01.12 03:51
      배열 형태로 생성할땐 이렇게 하심 됩니다 var AryImage : Array [1..10] Of TImage; 요렇게 하심 1...
    • xdelphi
      2001.01.12 00:05
      eewook wrote: > 응용프로그램실행시 파라메터전달방법은 어케하나요? > 예를들면 델파이에서 특정 텍스...
    • eewook
      2001.01.12 00:18
      xdelphi wrote: > eewook wrote: > > 응용프로그램실행시 파라메터전달방법은 어케하나요? > > 예를들면...
    • xdelphi
      2001.01.12 00:23
      eewook wrote: > xdelphi wrote: > > eewook wrote: > > > 응용프로그램실행시 파라메터전달방법은 어케...
    • eewook
      2001.01.12 00:33
      xdelphi wrote: > eewook wrote: > > xdelphi wrote: > > > eewook wrote: > > > > 응용프로그램실행시...
    • 정대연
    • 2001.01.11 23:02
    • 7 COMMENTS
    • /
    • 0 LIKES
    • 유재우
      2001.01.14 02:03
      정대연 wrote: > 델파이 5 로 ADO를 이용해서 M$-SQL 관련 프로그램을 하고 있습니다. > 얼마전 M$-SQL ...
    • 양용민
      2001.01.12 01:37
      혹시 ADO 2.6을 사용하시는지? 맞다면 델파이 ADO 컴포넌트를 패치해 보세요. 자세한 것은 한국 델...
    • 정대연
      2001.01.12 02:00
      양용민 wrote: > 혹시 ADO 2.6을 사용하시는지? > > 맞다면 델파이 ADO 컴포넌트를 패치해 보세요. >...
    • 양용민
      2001.01.12 06:28
      > 참고로 저의 개발환경을 말씀드리자면, > windows 2000 / M$-SQL 2000 / delphi 5 (물론 패치는 되어있...
    • 정대연
      2001.01.12 19:42
      먼저 용민님 정말 감사드립니다. 아래의 업데이트를 했더니 해결이 되었습니다. 하지만, 이 문제가 완...
    • Mr. Ziker
      2001.01.11 23:18
      테이블에 아무런 내용이 없는거 아닌지요... 정대연 wrote: > 델파이 5 로 ADO를 이용해서 M$-SQL 관...
    • 정대연
      2001.01.11 23:30
      제 질문에 관심을 갖아주셔서 감사드립니다. 물론 테이블엔 정상적인 데이타가 들어 있습니다. 이전 M$...
    • 조덕진
      2001.01.12 02:54
      강의식 wrote: > 델파이를 사랑하는 모든 분들께... > > StringGrid를 사용해서 값을 입력받고 표기하...
    • Umpro
      2001.01.12 00:41
      초델 wrote: > 리포트화일을 실행시키면 floating point division by zero라는 에러메시지가 뜹니다... >...
    • 초델
      2001.01.12 02:21
      Umpro wrote: > 초델 wrote: > > 리포트화일을 실행시키면 floating point division by zero라는 에러메...
    • Umpro
      2001.01.12 19:34
      > > 아마 나누려는 값이 0 일것입니다. > > 이렇게 해보세요 > > if aaa 0 then > > bbb := aaa/c...
    • 칠라기
    • 2001.01.11 22:32
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 지영일
      2001.01.11 22:57
      칠라기 wrote: > 폼 위치를 해상도에 상관없이 제어 하고 싶은데요.. > 폼의 좌표를 어떻게 지정하는건지...
    • sonic0
    • 2001.01.11 21:16
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 국어사랑
      2001.04.19 23:01
      니가 한말 한줄도 제대로 쓴말 없다. 그러니 당연 ActiveX모르지... sonic0 wrote: > 음.......열라...
    • Mr. Ziker
      2001.01.11 23:38
      안녕하세요.. ActiveX라 함은 말 그대로 X를 '미지수'라는 뜻으로 이해 하시면 됩니다. 즉 활동을 하기...
    • 권혁주
    • 2001.01.11 20:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 전철호
      2001.01.11 20:49
      권혁주 wrote: > 한가지 궁금한것이 있어 이렇게 글을 드립니다. > TWebBrowser 컴포넌트를 쓰려고 하는...
    • 이문환
    • 2001.01.11 19:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 냉혈이
      2001.01.11 19:49
      마스크에디터의 오브젝트 인스펙트부분에서여 TabStop이 False인지 아님 True인지 확인해보세여 False인...
    • hnc
    • 2001.01.11 19:11
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이원택
    • 2001.01.11 19:07
    • 3 COMMENTS
    • /
    • 0 LIKES
    • xdelphi
      2001.01.11 20:41
      이원택 wrote: > delphi 3.0을 다시 설치하였는데 F9를 누른후 BreakPoint에 가면 제가 원하는 변수앞에 ...
    • cico
      2001.01.11 21:15
      검 델파이5에선 어케해야 하남여/ 좀 알려주세요 이만 총총총 xdelphi wrote: > 이원택 wrote: ...
    • xdelphi
      2001.01.11 22:15
      cico wrote: > 검 델파이5에선 어케해야 하남여/ > > 좀 알려주세요 > > 이만 총총총 > > xdelph...