Q&A

  • 쿼리식의 연산자가 없는 구문오류?
MDB를 AOD를 사용하여 DBGrid로 불러오는 프로그램을 제작했습니다.

테이블명은 'pepple' 필드명이  'name', 'sex', 'addr', 'date', 'ect' 이런식으로 있습니다.

제일 처음 프로그램이 실행이 될때는 이상없이 불러집니다.

ADODataSet 컴포넌트의 CommandText 프로퍼티에  select * from people 이렇게 작성하였습니다.

문제는 제가 'sex' 필드가 '남' 인 자료들만 DBGrid에 표시하고 싶어서, 버튼을 하나 만들고 Click 이벤트에

ADODataset1.Close;
ADODataset1.commandtype := cmdtext;
ADODataset1.commandtext := 'select * form people where sex=남';
ADODataset1.Open;  

이렇게 작성하였습니다.

컴파일 후 실행해보니 쿼리식의 연산자가 없는 구문오류라고 나옵니다.

---
그래서 제가

ADODataSet 컴포넌트의 CommandText 프로퍼티에  select * from people where sex='남'

이렇게 작성을 하고 프로그램을 실행시키니 잘 되더군요. ㅡㅡ;


무엇때문에 이러는지 잘 모르겠습니다.
5  COMMENTS
  • Profile
    박지용 2005.03.04 22:43
    sex 필드가 text 타입이기 때문이죠...^^

    필드의 타입이 문자 또는 문자열의 경우는 '   ' 로 묶어줘야되죠...

    그럼... 즐프..


  • Profile
    nilriri™ 2005.03.04 07:14
    저 쿼리가 맞나요?

    희안하네..틀린거 맞는데요..^^;  컴터는 거짓말 안하거든요..

    야근 많이하신가보다..잠깐 휴식이...^^ 저도 저런경우 많죠..ㅋㅋㅋ

    select * form <--- from 입니다..


    이라고 하시면 될것 같습니다.


    QuotedStr 은  interface 절 uses에 db 를 추가해 주시면 될겁니다..^^ 아마도..

    help에서 QuotedStr  를 검색해보시거나 컨트롤키 누른 상태에서 클릭해보셔도 되구요..

    해당 함수가 선언되고 정의되어진 유닛을 찾을 수 있을겁니다.

    그럼...



  • Profile
    델피언 2005.03.04 08:25
    ㅡㅡ; 아이구 내가 미챠~ 컴파일시 오류없이 넘어가길래 아무 생각없이...
    예전부터 from 을 form하고 바꿔서 쓰던 좋지 않는 버릇이 있었는데 ㅋㅋ
    하긴 요즘 일이 많아서 정신이 없어요. 아무튼 너무~~ 감사합니다.
  • Profile
    nilriri™ 2005.03.04 10:52
    이것봐요..내 이러실줄 알았습니다..^^;
    글쓴 시간이 23시네..ㅋㅋㅋ 하긴 저두 새벽이지만.. 구인/구직 사이트 기웃거리다 ...
    푹 쉬시고... 아자!!!
  • Profile
    심재용 2005.03.03 09:55
    ADODataset1.commandtext := 'select * form people where sex=남';

    위 문장의 sex=남 부분을 sex=''남'' 과 같이 바꿔보세요.

    ADODataset1.commandtext := 'select * form people where sex=''남''';




    • 김길남
    • 2005.03.07 04:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 주재환
      2005.03.08 22:09
      adoquery.sql.append 대신에 adoquery.sql.text를 써보세요....
    • 심효기
    • 2005.03.06 21:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 착한천사
      2005.03.06 23:36
      착한천사 김경록입니다.. 혹시, MDI의 child form을 최소창으로 만드시는게 아닌지.. 그럼.. 기본적으로 ...
    • 구창민
      2005.03.07 19:03
      안녕하세요.. 혹시 F7 키로 디버깅 하시는건 아니신지요? 함수내부로 진입하지 않으시려면 F8 키를 ...
    • 남경만
    • 2005.03.05 08:17
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이규하
      2005.03.05 12:29
      만약, TQuery  를 더블 클릭 하셔서, 마우스 오른쪽 버튼으로 Add all fields 하신다음에, 해당 ...
    • 남경만
      2005.03.07 04:38
      덕분에 쉽게 해결하였습니다.. ^^ 그리고 또 다른 하나를 배웠네요.. 맨날 배워만가고.. 저도 어여 스...
    • 착한천사
      2005.03.06 23:09
      착한천사 김경록입니다. 제가 알기로는 linked list에는 많은 종료가 있다는걸로 아는데요.. N-Linked li...
    • 박진규
    • 2005.03.05 05:08
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 도깨비
      2005.03.23 21:58
      첨부화일을 작업중인 프로젝트 폴더에 압축해제 하시고, iodll.txt화일을 참조하시어 명령사용법은 ...
    • 델피언
    • 2005.03.05 04:23
    • 2 COMMENTS
    • /
    • 0 LIKES
    • nilriri™
      2005.03.05 08:56
      온라인 도움말의 일부내용입니다. loCaseInsensitive로 도움말을 검색해보세요. ^^; loCaseInsensit...
    • Crazy™
      2005.03.05 19:23
      주로 제가 퀀텀그리드를 쓰는데 그리드 kefield 란 부분이 안맞는 경우 이런증상이 생깁니다. 편법이지만 ...
    • Crazy™
      2005.03.05 19:09
      안녕하세요. 루프문으로 돌릴때처럼 똑같이 CompositeReport에 추가하면 됩니다. 5개의 리포트를 생성 후...
    • 송동규
      2005.03.07 17:38
      먼저 답변 감사드립니다. 하지만 똑같이 루프를 돌려서 CompositeReport를 하면 (내부적으로 reports...
    • 이상호
    • 2005.03.05 00:04
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 서해근
    • 2005.03.04 21:48
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 박지용
      2005.03.04 22:38
      TDBComboBox연결된 Dataset과 나머지 컨트롤들의 dataset이 틀릴경우 간단하게 처리할려면 두 테이...
    • 서해근
      2005.03.04 22:55
      소스를 깜빡하고 올리지 않았네요;; 테이블은 TBLDATA라고 한개를 썼습니다. procedure Tmain.Form...
    • 무심코
      2005.03.05 00:33
      거의 다 만드신것 같은데.... 소스를 보다가 이해가 안되는 부분이 있어 몇자 적습니다. 1. 내용를 보니...
    • 서해근
      2005.03.05 19:01
      가르쳐 주셔서 감사합니다 ^^
    • Crazy™
      2005.03.05 19:19
      무심코 님의 내용처럼 locate를 이용해서 찾을 수도 있지만 콤보박스가 dbcombo 인데 그냥 연결만 해도 됩...
    • 이규하
      2005.03.05 12:50
      메인에서 차일드 폼을 부를 경우 <!--codeS--> with Tchform.create(application) do Try  ...
    • 조운석
      2005.03.04 22:14
      메인폼에서 <!--CodeS--> FPopup = TFPopup.Create(Self); if (FPopup.ModalResult = mrO...
    • 김일근
    • 2005.03.04 18:35
    • 2 COMMENTS
    • /
    • 0 LIKES
    • K모씨
      2005.03.04 23:06
    • nilriri™
      2005.03.05 04:25
      코멘트가 달린거 같은데 안보이네요..^^ 어떤 내용인지 몰라서 저도 한자 적습니다.. 라이센스 부족&...
    • 석주현
      2005.03.04 17:21
    • 이중철
      2005.03.04 19:49
    • 정찬희
      2005.03.04 04:12
      TList에 아이템을 집어넣으면 전부다 Pointer형으로 바뀌어 들어갑니다... 가져나올때도 Pointer로만 인식...
    • 세일러문
      2005.03.04 18:41
      답변감사합니다.. 그런데요... 님께서 말씀하신대로.. TList(TList.Items[i]).Count 이대로 했는데...
    • nilriri™
      2005.03.04 19:55
      <!--CodeS-->     TList(ShapeList .Items[i]).Count; <!--CodeE--> ...
    • 주재환
    • 2005.03.03 20:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2005.03.04 00:17
      안녕하세요.. 이런 답변을 원하신게 아니시겠지만, 제가 볼때는 같은 기능을 하는 폼을 하나 만드시...
    • 석주현
      2005.03.04 17:23
    • 유효근
    • 2005.03.03 12:15
    • 7 COMMENTS
    • /
    • 0 LIKES
    • 임형호
      2005.03.03 17:42
    • 무심코
      2005.03.03 18:26
    • 유효근
      2005.03.04 12:28
    • 귀폭
      2005.03.04 03:39
      소스 올립니다... 원하시는데로 고쳐서 쓰세요...
    • 유효근
      2005.03.04 12:28
      정말 감사합니다.^^
    • 유효근
      2005.03.04 02:20
      코멘트 다는 곳이 사라졌네요..^^; 혹시 코멘트 다신분~ 다시 리플로 답변해 주실수 있나요?.^^; 부...
    • 마이크로김
      2005.03.05 03:20
      formatdatetime('YYYY-MM-DD',now + 100)
    • 델피언
    • 2005.03.03 08:33
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 박지용
      2005.03.04 22:43
      sex 필드가 text 타입이기 때문이죠...^^ 필드의 타입이 문자 또는 문자열의 경우는 '   ' 로...
    • nilriri™
      2005.03.04 07:14
      저 쿼리가 맞나요? 희안하네..틀린거 맞는데요..^^;  컴터는 거짓말 안하거든요.. 야근 많...
    • 델피언
      2005.03.04 08:25
      ㅡㅡ; 아이구 내가 미챠~ 컴파일시 오류없이 넘어가길래 아무 생각없이... 예전부터 from 을 form하고...
    • nilriri™
      2005.03.04 10:52
      이것봐요..내 이러실줄 알았습니다..^^; 글쓴 시간이 23시네..ㅋㅋㅋ 하긴 저두 새벽이지만.. 구인/구직...
    • 심재용
      2005.03.03 09:55
      ADODataset1.commandtext := 'select * form people where sex=남'; 위 문장의 sex=남 부분을 sex=''남'...