Q&A

  • 소스좀 봐주시와엽
procedure TForm1.MClick(Sender: TObject);

var

d:string;

begin

d:= DATETOSTR(M.DATE);

with query1 do

begin

close;

sql.Clear;

sql.Add('select Sk from S');

sql.Add('where 날짜='''+d+'''');

open;

end;

if not query1.Eof then begin

form2.Memo1.Text:=query1.fieldbyname('Sk').asstring;

form2.Edit1.Text:=datetostr(m.date);

form2.ShowModal;

end;



에러내용은 타입이 맞지않다는 군엽....



아마두 날짜필드에서 맞지 않는것 같은디...음 어떻게 해야 하는쥐엽...



4  COMMENTS
  • Profile
    구창민 2000.06.19 22:21
    사발우성 wrote:

    > procedure TForm1.MClick(Sender: TObject);

    > var

    > d:string;

    > begin

    > d:= DATETOSTR(M.DATE);

    > with query1 do

    > begin

    > close;

    > sql.Clear;

    > sql.Add('select Sk from S');

    > sql.Add('where 날짜='''+d+'''');

    > open;

    > end;

    > if not query1.Eof then begin

    > form2.Memo1.Text:=query1.fieldbyname('Sk').asstring;

    > form2.Edit1.Text:=datetostr(m.date);

    > form2.ShowModal;

    > end;

    >

    > 에러내용은 타입이 맞지않다는 군엽....

    >

    > 아마두 날짜필드에서 맞지 않는것 같은디...음 어떻게 해야 하는쥐엽...

    >







    안녕하세요~ 구창민입니다.



    'SK'필드가 스트링형이 맞나요? 한번 살펴보세요.



    혹시 모르니 Sql문에서 띄어쓰기를 아래처럼 바꾸어서 한번 해 보시구요~



    그럼~ 즐거운 프로그래밍 하시길~







    procedure TForm1.MClick(Sender: TObject);

    var

    d:string;

    begin

    d:= DateToStr(M.DATE);

    with Query1 do

    begin

    Close;

    Sql.Clear;

    Sql.Add('select Sk from S ');

    Sql.Add('where 날짜=''' + d + '''');

    Open;

    end;



    if not Query1.Eof then

    begin

    Form2.Memo1.Text:= Query1.FieldByName('Sk').asstring;

    Form2.Edit1.Text:= d;

    Form2.ShowModal;

    ...



  • Profile
    사발우성 2000.06.19 22:58
    구창민님 그게 아닌것 같은디엽 ㅠ..ㅠ



    음 일단 s라는 테이블에는 Sk라는 필드 하나와 날짜라는 필드가 있음당.



    Sk 필드는 string , 날짜 필드는 date 형으로 했습니당..... ㅠ.ㅠ

    글구엽 달력컴포넌트의 날짜를 클릭 하면 그날짜에 해당하는 스케줄이 담 모달폼이 열리면서 나타 나게 할려구함당 어렵네엽... 다른 것은 다하겠는디 날짜필드에 있는 넘은 분명히 date 형임당... 글구 d는 스트링이구엽 비교를 할 수 없겠죠 그래서리..

    요기 이부분이 말썽인걸루 생각은 되지만 어떻게 해야 할쥐 손을 쓸 수가 없음당..

    저장할 때는

    parambyname를 사용했는디...불러올때는 어떻게 해야 하는쥘 모르겠습니당.ㅠ.ㅠ

    초보에게 따뜻한 가르침을... 그럼 2만



    >

    > 안녕하세요~ 구창민입니다.

    >

    > 'SK'필드가 스트링형이 맞나요? 한번 살펴보세요.

    >

    > 혹시 모르니 Sql문에서 띄어쓰기를 아래처럼 바꾸어서 한번 해 보시구요~

    >

    > 그럼~ 즐거운 프로그래밍 하시길~

    >

    >

    >

    > procedure TForm1.MClick(Sender: TObject);

    > var

    > d:string;

    > begin

    > d:= DateToStr(M.DATE);

    > with Query1 do

    > begin

    > Close;

    > Sql.Clear;

    > Sql.Add('select Sk from S ');

    > Sql.Add('where 날짜=''' + d + '''');

    > Open;

    > end;

    >

    > if not Query1.Eof then

    > begin

    > Form2.Memo1.Text:= Query1.FieldByName('Sk').asstring;

    > Form2.Edit1.Text:= d;

    > Form2.ShowModal;

    > ...

    >

  • Profile
    구창민 2000.06.19 23:32
    사발우성 wrote:

    > 구창민님 그게 아닌것 같은디엽 ㅠ..ㅠ

    >

    > 음 일단 s라는 테이블에는 Sk라는 필드 하나와 날짜라는 필드가 있음당.

    >

    > Sk 필드는 string , 날짜 필드는 date 형으로 했습니당..... ㅠ.ㅠ

    > 글구엽 달력컴포넌트의 날짜를 클릭 하면 그날짜에 해당하는 스케줄이 담 모달폼이 열리면서 나타 나게 할려구함당 어렵네엽... 다른 것은 다하겠는디 날짜필드에 있는 넘은 분명히 date 형임당... 글구 d는 스트링이구엽 비교를 할 수 없겠죠 그래서리..

    > 요기 이부분이 말썽인걸루 생각은 되지만 어떻게 해야 할쥐 손을 쓸 수가 없음당..

    > 저장할 때는

    > parambyname를 사용했는디...불러올때는 어떻게 해야 하는쥘 모르겠습니당.ㅠ.ㅠ

    > 초보에게 따뜻한 가르침을... 그럼 2만

    >

    > >

    > > 안녕하세요~ 구창민입니다.

    > >

    > > 'SK'필드가 스트링형이 맞나요? 한번 살펴보세요.

    > >

    > > 혹시 모르니 Sql문에서 띄어쓰기를 아래처럼 바꾸어서 한번 해 보시구요~

    > >

    > > 그럼~ 즐거운 프로그래밍 하시길~

    > >

    > >

    > >

    > > procedure TForm1.MClick(Sender: TObject);

    > > var

    > > d:string;

    > > begin

    > > d:= DateToStr(M.DATE);

    > > with Query1 do

    > > begin

    > > Close;

    > > Sql.Clear;

    > > Sql.Add('select Sk from S ');

    > > Sql.Add('where 날짜=''' + d + '''');

    > > Open;

    > > end;

    > >

    > > if not Query1.Eof then

    > > begin

    > > Form2.Memo1.Text:= Query1.FieldByName('Sk').asstring;

    > > Form2.Edit1.Text:= d;

    > > Form2.ShowModal;

    > > ...

    > >





    사발우성님 날짜형필드명이 '날짜'인가요? ^^;



    일반적으로 날짜를 비교하거나 날짜함수를 쓰면

    Current 시스템의 날짜를 가지고 사용합니다.



    날짜형식이 어떻게 되어있나 살펴보시고

    제가 보기엔 쿼리문장엔 잘못된 점을 찾을 수 없습니다.



    날짜형식을 보신후 FormatDateTime 을 이용해 그와 같은

    날짜형식으로 만드신 후 쿼리를 날리세요.



    아니면, 아래처럼 시스템 날짜형식을 임의로 바꾸는 방법도 있을 수 있습니다.



    날짜 형식의 변경

    ShortDateFormat:='mm/dd/yy';



    그리고, DB질문을 하실땐 항상 사용하는 DB가 무엇인지를 말해 주셔야

    보다 나은 답변을 기대하실 수 있습니다.



    그럼~ 즐거운 프로그래밍 하시길~

  • Profile
    사발우성 2000.06.19 23:51
    충고 감솨 함당....



    음 디비는 파라독스임당.... 아직 로컬을 못 벗어난 초보람당...ㅠ.ㅠ



    제가 하고 있는 것을 간단하게 말하면 바로 이것임당...



    datetimepicker 컴포넌트나 달력컴포넌트에서 그날짜를 누르면 거기에 있는 날짜를



    거기에 해당하는 레코드와 비해서리...거기에 해당하는 레코드를 불러 오는 것임당..



    생각은 쉬운디..... 실력이 따라 가지 않는 군엽 ㅠ.ㅠ



    헐 어떻게 하면 이렇게 구현할 수 있을 까요....