|
날짜 조건식 같은경우에는 SQL에 맞게 스트링으로 변환 해야할 필요가 있습니다.
간단히 예제 소스를 보여 드리면
strDate1 = FormatDateTime("yyyy-mm-dd 23:59:59", Now());
strDate2 = FormatDateTime("yyyy-mm-dd 00:00:00", IncMonth(Now(), -iTerm));
strDate1에는 년-월-일 시:분:초 로 구성된 문자열이 만들어 지고요
이 문자열을 DateTime 필드의 조건식으로 이용하시면 됩니다.
그러니깐 님의 소스에서는 년월일만 가지고 검색 하니깐 yyyy-mm-dd 형식의 날짜 데이터만 만들어서 넘기면
됩니다.
ADOQuery1->SQL->Text =
WideString("Select SUM(ID) AS QTY from output_data where indate <= '"+
FormatDateTime("yyyy-mm-dd",DTP1->Date) +"' and indate >= '"+
FormatDateTime("yyyy-mm-dd",DTP2->Date) +"'");
이런식으로요
그외에 다른 양식 지정자를 참고 삼아 애기 드리면
yy-mm-dd <- 07-01-30
yyyy-mm-dd <- 2007-01-30
yyyy-mm-dd hh:nn <- 2007-01-30 09:56
yyyy-mm-dd hh:nn:ss <- 2007-01-30 09:56:59
이런식으로 날짜를 문자열로 만들어 줍니다. 참고 하세요~
럽투유 님이 쓰신 글 :
: DB는 MDB를 사용하고 있구요.
: 날짜타입은 "2007-01-24 오후 3:34:51" 이렇게 기본형으로 쓰고 있습니다.
: 쿼리는
: ADOQuery1->SQL->Text = WideString("Select SUM(ID) AS QTY from output_data where indate <= '"+ DTP1->Date +"' and indate >= '"+ DTP2->Date +"'");
: 인데요.
: TimePicker를 통해 하는데요.
:
: 검색을 누르면 "조건식의 데이터 형식이 일치 하지 않습니다' 라고 나오는데요?/
:
: 초짜라 코드 부탁드립니다.
:
: 감사합니다.
|