Q&A

  • Primary key 가 여러개 일때 의 조회 방법좀....--;
안녕하세여..
이곳 사이트에서 많은 도움을 받구 있는 사람입니다.

아무리 찾으려 해도 답이 나오지 않아서 이렇게
질문을 올립니다...
다른게 아니라...
제가  어떤 디비의 특정 값.. ( 예: 수표번호)를 입력 받아서
조회를 하려고 하는데...
테이블을 사했구여.. 디비는 파라독스 를 사용합니다.

근데 gotokey, findkey, 를 사용할려구 했는데..
찾을수 가 없습니다..

이 방법이 아닌가싶어서 . QUERY 를 사용 해 봤는데..
원하는 값만 나타나지 않구 .. 화면의 디비 그리드는

변하지 않구 그대로 있어여.
제가 먼가를 빼먹은거 같기두 하구..
부디 이 모자란 이에게 도움을 부탁 드립니다. 그럼. 날씨는
추어지는 데 모두들 건강 조심 하세여..
2  COMMENTS
  • Profile
    KYH 2002.10.10 01:36
    혹시 키필드가 여러개란 말씀이신가요? ^^;;

    제가 제대로 이해했다면 setkey 를 쓰시면 될겁니다.

    ex)

      table1.setkey;
      table1.fieldbyname('필드1').asstring := '검색값1';
      table1.fieldbyname('필드2').asstring := '검색값2';
      table1.fieldbyname('필드3').asstring := '검색값3';
      if table1.gotokey then
      beign
           showmessage('찾았슈 ^^;;;;');
           //아마 여기에서 그리드의 레코드로 이동이 있을겁니다.
      end
      else
      beign
           showmessage('못찾았슈 --;;;;');
      end;

    물론 키값검색순서는 맞추시는게 좋겠져..

    즐프.


  • Profile
    임형호 2002.10.09 22:43
    예전에 제가 썼던 내용인데..참고하세요.

    그리고 Table에서 검색은 몇가지가 있습니다.
    일반적으로 FindKey, FindNearest, GotoKey, GotoNearest, Locate, Filter가 있는것 같습니다.
    먼저 FindKey, FindNearest, GotoKey, GotoNearest는 SetKey라는 명령어를 같이 사용하여야 하며 검색할 필드가 프라이머리키로 설정이 되어있는 필드일경우에는 상관이 없지만 세컨더리인덱스로 설정이 되어있는키라면 FindKey, FindNearest, GotoKey, GotoNearest 명령을 사용하기전에 Indexfieldnames나 indexname으로 검색할 필드를 인덱스명으로 지정해야합니다. 즉 위의 4개의 명령어는 검색할 필드가 프라이머리키나 세컨더리인덱스로 설정이 되어있어야합니다. 그리고 FindKey, GotoKey는 정확한 값을 입력해야하지만 FindNearest, GotoNearest는 정확한 값이 없는경우 근사치의 값을 찾아갑니다.  
    만약 검색할 필드가 프라이머리키나 세컨더리인덱스로 설정이 안되어있는경우의 검색이라면 Locate명령어를 사용합니다. 이것은 인덱스에 관계없이 어떤 필드든지 값을 검색하여 줍니다.
    그리고 Filter는 설정한 조건에 따라 해당되는 값만을 출력합니다. 즉 FindKey..등 위에서 사용한 검색방법의 결과는 해당레코드로 위치를 옮겨주는것에 반해(DBGrid 연결시에 보면 좌측의 화살표가 결과 레코드위치로 옮겨진다.즉 현재 연결된 DB의 모든레코드는 출력된다.)
    Filter는 해당되는 값만을 걸러내어 출력합니다. 조건에 와일드문자(*)를 줄수도 있습니다. 그러나 조건뒤에만 사용할 수 있는것 같더군요.

    그리고 단순히 해당자료만 보여주기 위해서는 sql 문을 사용하시면됩니다.
    select * from 테이블명
    where 수표번호 = 검색값

    위와같은 형태로 하면 됩니다.


    참고로 위의 방법으로 했는데 안될때에는... 기입하신 소스를 올려주시는것이 답변을 얻는데 더 도움이 될듯 싶네요.






    • 박철우
    • 2002.10.10 00:50
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 문성운
    • 2002.10.09 23:33
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김경록
      2002.10.10 03:55
      저의 경우를 들어서 말씀드리고, 먼저 어떻게 공부하느냐를 설명드리겠습니다.. 물론, 제 경험으로 비추...
    • 문성운
      2002.10.10 07:52
      경험에 가득찬 선배님의 말씀을 들으니 힘이 생깁니다. 지금 구루구루로 ms-sql2000 다운받고있습니다..-_...
    • KDDG_ZZOM
      2002.10.10 00:57
      꼭 데이타베이스를 배워야 되는건 아니죠... 컴터쪽이 너무나 많이 세분화? 되어있다고 예기해야되나??? ...
    • 문성운
      2002.10.10 07:48
      답변 감사합니다..^^;; 많은 도움이 되었습니다. 앞으로도 자주 부탁드릴께요^^;
    • 정경철
      2002.10.12 00:53
      그냥 쿼리문으로 지우십시오... delete from table1;
    • 김경록
      2002.10.10 04:00
      Pradox는 Union이 안되는것으로 알고 있습니다. MySQL도 4.0 이전 버젼에서 Union이 안되기 때문에, 임...
    • ▲┫┃■┃콜론
      2002.10.10 04:57
      조언 감사해요~ 임시테이블을 생성 해야 겠네요~ 담부턴 파라독스 사용 안할려구 생각 중입니다. 평안하...
    • 노경숙
    • 2002.10.09 23:03
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 또치
      2002.10.09 23:13
      쿼리를 날릴때 이렇게 하면 어떨까요. 오라클이라면, 그 컬럼명이 aaa라고 한다면, select deco...
    • 이명열
    • 2002.10.09 21:42
    • 2 COMMENTS
    • /
    • 1 LIKES
    • KYH
      2002.10.10 01:36
      혹시 키필드가 여러개란 말씀이신가요? ^^;; 제가 제대로 이해했다면 setkey 를 쓰시면 될겁니다. ex...
    • 임형호
      2002.10.09 22:43
      예전에 제가 썼던 내용인데..참고하세요. 그리고 Table에서 검색은 몇가지가 있습니다. 일반적으로 Fi...
    • 이추형
      2002.10.09 21:58
      select current date from syscat.dbauth
    • 최연식
    • 2002.10.09 20:58
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 송강식
      2002.10.10 01:04
      뭐 정확히 요구하시는게 표를 그린다음에 각 표의 셀에 데이타를 넣으시겠다는 것인지는 잘모르겠지만요....
    • 이추형
      2002.10.09 20:56
      가능합니다. 하지만 제가 아래한글과 컨택해본 결과 자신들이 사용하는 특정라이브러리가 필요하며, 판...
    • 이추형
      2002.10.09 20:08
      procedure TfrmTest.Button1Click(Sender: TObject); begin   if GridXLS1.FileName <> ...
    • 정성훈
      2002.10.09 20:44
      이추형님께서 쓰신 이글은 GridXLS 라는 외부컴퍼넌트가 있어야 가능한거 아닙니까????
    • 송재진
    • 2002.10.09 19:38
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이추형
      2002.10.09 19:54
      첨부문서 참조
    • 짱아
    • 2002.10.09 19:32
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이추형
      2002.10.09 19:43
      gubun : string; 의 변수가 글로벌이 아니기에 다른 Form에서 참조 몬합니다. 또한 Form2에서 Form1의 변...
    • 짱아
      2002.10.09 20:18
      답변 감사해염.. 근데... form2의 uses절에는 참조한다는 문귀를 넣었구여... 글로벌변수로 사용하려면&n...
    • 박희경
    • 2002.10.09 08:18
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 델사랑
    • 2002.10.09 07:16
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 2002.10.09 08:47
      Label1.Font.Style := [fsItalic];
    • 김상수
    • 2002.10.09 05:04
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 신승철
      2002.10.12 01:25
      detail band와 pagefooter... 참으로 난해할것입니다. 저도 아직 풀지 못한부분이 있어서요.. pagefooter...
    • 김상수
      2002.10.12 19:29
      답변 감사드립니다.. 아래 제가 쓴 부분은 해결했습니다..^^v 근데 님의 말씀대로 라인이 걸리...
    • 김종화
    • 2002.10.09 04:34
    • 6 COMMENTS
    • /
    • 0 LIKES
    • 박상윤
      2002.10.09 05:27
      32bit를 사용하시는 것은 낭비입니다. 뒤의 8바이트는 아직사용하지않기때문에 메모리 낭비가 됩니다. ...
    • 김종화
      2002.10.09 20:47
      나름대로 버그 잡았다구 생각하구 나온 결과가 아래와 같네요.. 한번 테스트 해 보시구.. 잘 못된점 있으...
    • 박상윤
      2002.10.09 22:17
      변환하시면 돼구여..아마도 처리하는 루틴이 32비트 체게로 되어있어서... 그런것 같네여.. 지금 사...
    • 김종화
      2002.10.11 01:17
      SRcRow: pRGBTriple ; 여기서 pRGBTriple 이게 어떤 형인가여?? 도움말에 안나오는데요...^^;; 정...
    • 박상윤
      2002.10.11 21:39
      도움말은 MSDN을 참고하시구 8비트의 경우 pBYTE=^BYTE 24비트의 경우 pRGBTRIPLE=RGBTRIPLE; ...
    • 박상윤
      2002.10.10 05:03
      죄송... 일하다가 바뻐서 .. 다 수정 못한것을 올려서.. ^^; 위에 예제 다시수정 했습니다.. 참고 ...
    • 2002.10.09 04:17
      정렬이라는 걸로 검색해 보시면 많은 예제를 보실 수 있을겁니다. 오른쪽, 왼쪽, 가운데, 정렬등 모두 가...
    • 강재규
      2002.10.10 03:03
      초보입니다... CalcField를 사용해보세요... 1. TTable을 더블클릭을 하세요. 2. 창이 나타나면 ...
    • 홍성락
      2002.10.09 04:49
      DBGrid의 DrawColumnCell이벤트에서 Field을 TDateTimeField형변환하여 DisplayFormat문자를 설정하시면 ...