Q&A

  • 오늘날짜검색
파라독스디비를 쓰고있는데 오늘날짜검색을 어떻게해야할지 모르겠어여..



with Query1 do

begin

Close;

SQL.Clear;

SQL.Add( 'SELECT 일자, num, No, name' );

SQL.Add( 'FROM "sample.DB" ');

SQL.Add( 'WHERE 일자=오늘날짜' );

open;

end;



근데 어떻게써줘야할지..

오늘날짜입력부분은 datetimepicker를쓰고있는데여..자꾸 에러가나네여..

날짜형식은 yyyy-mm-dd입니다..



5  COMMENTS
  • Profile
    coolling 2000.11.17 02:14
    select하는 일자 필드의 데이터 형이 뭔지 모르겠네요...

    에러가 나는건 DataType의 문제인것 같습니다..



    일자가 string Type이라면,

    with Query1 do begin

    Close;

    SQL.Clear;

    SQL.Add( 'SELECT 일자, num, No, name' );

    SQL.Add( 'FROM "sample.DB" ');

    SQL.Add( 'WHERE 일자 = :ToDay );

    Prepare;

    ParamByName('ToDay').AsString := FormatDateTime('YYYY-MM-DD',datetimepicke1.date);

    Open;

    FetchAll;

    end;

    이렇게 하면 되겠죠...하지만,

    일자가 날짜형(Date Type)이라면, 글쎄요... 전 날짜 타입은 안 써봐서....

    with Query1 do begin

    Close;

    SQL.Clear;

    SQL.Add( 'SELECT 일자, num, No, name' );

    SQL.Add( 'FROM "sample.DB" ');

    SQL.Add( 'WHERE 일자 = :ToDay );

    Prepare;

    ParamByName('ToDay').AsDateTime := datetimepicke1.date;

    Open;

    FetchAll;

    end;

    이렇게 하면 될것되 같은데.. 확인은 안해봤습니다...

    델파이 도움말중에 sample에서 본것 같은데.. 잘 생각이 안나네요...



  • Profile
    초보 2000.11.17 02:47
    > 일자가 날짜형(Date Type)이라면, 글쎄요... 전 날짜 타입은 안 써봐서....

    > with Query1 do begin

    > Close;

    > SQL.Clear;

    > SQL.Add( 'SELECT 일자, num, No, name' );

    > SQL.Add( 'FROM "sample.DB" ');

    > SQL.Add( 'WHERE 일자 = :ToDay );

    > Prepare;

    > ParamByName('ToDay').AsDateTime := datetimepicke1.date;

    > Open;

    > FetchAll;

    > end;

    > 이렇게 하면 될것되 같은데.. 확인은 안해봤습니다...

    > 델파이 도움말중에 sample에서 본것 같은데.. 잘 생각이 안나네요...



    똑같이했는데 에러는 안나는데..결과값이 없네요..

    분명 오늘날짜가 들어있는데..

    다른날로해봤는데도 역시나...

    >

  • Profile
    coolling 2000.11.17 03:10
    안된다구요.. 어허~~

    ParamByName('ToDay').AsDateTime := datetimepicke1.date;을

    ParamByName('ToDay').AsDate := datetimepicke1.date;로 고쳐보세요...



    초보 wrote:

    > > 일자가 날짜형(Date Type)이라면, 글쎄요... 전 날짜 타입은 안 써봐서....

    > > with Query1 do begin

    > > Close;

    > > SQL.Clear;

    > > SQL.Add( 'SELECT 일자, num, No, name' );

    > > SQL.Add( 'FROM "sample.DB" ');

    > > SQL.Add( 'WHERE 일자 = :ToDay );

    > > Prepare;

    > > ParamByName('ToDay').AsDateTime := datetimepicke1.date;

    > > Open;

    > > FetchAll;

    > > end;

    > > 이렇게 하면 될것되 같은데.. 확인은 안해봤습니다...

    > > 델파이 도움말중에 sample에서 본것 같은데.. 잘 생각이 안나네요...

    >

    > 똑같이했는데 에러는 안나는데..결과값이 없네요..

    > 분명 오늘날짜가 들어있는데..

    > 다른날로해봤는데도 역시나...

    > >

  • Profile
    까마귀 2000.11.17 02:58
    안녕하세요. 까마귀입니다.

    파라독스를 않써봐서 확실한 것은 아닌데요.

    전 MS-SQL 7.0을 쓰거든요.

    파라미터를 스트링으로 잡아서 넣으세요.



    ParamByName('ToDay').AsString := FormatDateTime('YYYY-MM-DD',datetimepicke1.date);



    이렇게 해보세요.

    만일 이렇게 해도 않되면 날짜 구분자인 하이픈(-)을 빼고 해보세요.

    그러면 되리라고 생각합니다.







    위대한 단군혼이 살아있는 나라.... 대한민국.



    초보 wrote:

    > > 일자가 날짜형(Date Type)이라면, 글쎄요... 전 날짜 타입은 안 써봐서....

    > > with Query1 do begin

    > > Close;

    > > SQL.Clear;

    > > SQL.Add( 'SELECT 일자, num, No, name' );

    > > SQL.Add( 'FROM "sample.DB" ');

    > > SQL.Add( 'WHERE 일자 = :ToDay );

    > > Prepare;

    > > ParamByName('ToDay').AsDateTime := datetimepicke1.date;

    > > Open;

    > > FetchAll;

    > > end;

    > > 이렇게 하면 될것되 같은데.. 확인은 안해봤습니다...

    > > 델파이 도움말중에 sample에서 본것 같은데.. 잘 생각이 안나네요...

    >

    > 똑같이했는데 에러는 안나는데..결과값이 없네요..

    > 분명 오늘날짜가 들어있는데..

    > 다른날로해봤는데도 역시나...

    > >

  • Profile
    초보 2000.11.17 03:51
    좋은하루되세요...