Q&A

  • DB에서 select 한 내용 컴포박스로 옮기기
님들 한가지 물어볼게요...

DB에서 한 필드의 내용을 select 했어요..

그런데 이 필드의 행들을 combobox의 items에 넣을려고 합니다.

combobox.items.add := ?

물론 위에선 query로 select 해놨져.

? 에 fieldbyname('id').asinteger; next;하묜 안되던데

이부분에 대해서 설명좀 부탁드릴게요...

5  COMMENTS
  • Profile
    이희정 2001.04.23 19:19
    윤순상 wrote:

    > 님들 한가지 물어볼게요...

    > DB에서 한 필드의 내용을 select 했어요..

    > 그런데 이 필드의 행들을 combobox의 items에 넣을려고 합니다.

    > combobox.items.add := ?

    > 물론 위에선 query로 select 해놨져.

    > ? 에 fieldbyname('id').asinteger; next;하묜 안되던데

    > 이부분에 대해서 설명좀 부탁드릴게요...



    글케 Next하면 안되구요.



    While문 사용하셔서.



    While not Query.eof do

    begin

    combobox.items.add := Query.FieldByname...

    Query.Next;

    end;



    일케 하심 될 거 같은데염..^^

  • Profile
    모름이 2001.04.23 20:23
    윤순상 wrote:

    > 님들 한가지 물어볼게요...

    > DB에서 한 필드의 내용을 select 했어요..

    > 그런데 이 필드의 행들을 combobox의 items에 넣을려고 합니다.

    > combobox.items.add := ?

    > 물론 위에선 query로 select 해놨져.

    > ? 에 fieldbyname('id').asinteger; next;하묜 안되던데

    > 이부분에 대해서 설명좀 부탁드릴게요...



    while문으로 돌리셨나여..?



    while not query1.eof do

    begin

    combobox.items.add(fieldbyname('id').asstring);

    //:= 이게 아니라 () 이겁니다. 잠시 헷갈림...

    query1.next;

    end;

    대충 이런씩으로 흐미..대충 생각 난데로 하였습니다.. 구럼 이만....



  • Profile
    윤순상 2001.04.23 19:36
    모름이 wrote:

    > 윤순상 wrote:

    > > 님들 한가지 물어볼게요...

    > > DB에서 한 필드의 내용을 select 했어요..

    > > 그런데 이 필드의 행들을 combobox의 items에 넣을려고 합니다.

    > > combobox.items.add := ?

    > > 물론 위에선 query로 select 해놨져.

    > > ? 에 fieldbyname('id').asinteger; next;하묜 안되던데

    > > 이부분에 대해서 설명좀 부탁드릴게요...

    >

    > while문으로 돌리셨나여..?

    >

    > while not query1.eof do

    > begin

    > combobox.items.add := fieldbyname('id').asstring;

    > query1.next;

    > end;

    > 대충 이런씩으로 흐미..대충 생각 난데로 하였습니다.. 구럼 이만....



    while 문을 돌렸거든요... 첨부터..그런데 자꾸 에러가 나요...제가 짠 소스입니다.

    한번 봐주세요...그리고 답변 정말 감사드립니다.



    procedure Tsearch.FormCreate(Sender: TObject);

    begin

    query1.DatabaseName := dm.Db.DatabaseName;

    with query1 do

    begin

    close;

    sql.clear;

    sql.add ( 'select distinct substr(date,1,4) year from mylife' );

    try

    open;

    except

    application.messagebox(pchar('조회중에러발생'),'확인',mb_ok);

    exit;

    end;



    While not Query1.eof do

    begin

    --> combobox2.items.add := Query1.FieldByname('year').asstring;

    Query1.Next;

    end;

    end;



    에러가 나는데요 -->에서 not enough actual parameter,

    그리고 year가 숫자거든요. 그래서 전 asinteger로 걍 했는데

    format해서 써야 하나요.?



    다시한번 답변부탁드릴게요...그럼 즐코하셈요...

  • Profile
    kylix 2001.04.23 19:45
    function Add(const S: string): Integer;



    combobox.items.add(넣을 문자열);



    윤순상 wrote:

    > 모름이 wrote:

    > > 윤순상 wrote:

    > > > 님들 한가지 물어볼게요...

    > > > DB에서 한 필드의 내용을 select 했어요..

    > > > 그런데 이 필드의 행들을 combobox의 items에 넣을려고 합니다.

    > > > combobox.items.add := ?

    > > > 물론 위에선 query로 select 해놨져.

    > > > ? 에 fieldbyname('id').asinteger; next;하묜 안되던데

    > > > 이부분에 대해서 설명좀 부탁드릴게요...

    > >

    > > while문으로 돌리셨나여..?

    > >

    > > while not query1.eof do

    > > begin

    > > combobox.items.add := fieldbyname('id').asstring;

    > > query1.next;

    > > end;

    > > 대충 이런씩으로 흐미..대충 생각 난데로 하였습니다.. 구럼 이만....

    >

    > while 문을 돌렸거든요... 첨부터..그런데 자꾸 에러가 나요...제가 짠 소스입니다.

    > 한번 봐주세요...그리고 답변 정말 감사드립니다.

    >

    > procedure Tsearch.FormCreate(Sender: TObject);

    > begin

    > query1.DatabaseName := dm.Db.DatabaseName;

    > with query1 do

    > begin

    > close;

    > sql.clear;

    > sql.add ( 'select distinct substr(date,1,4) year from mylife' );

    > try

    > open;

    > except

    > application.messagebox(pchar('조회중에러발생'),'확인',mb_ok);

    > exit;

    > end;

    >

    > While not Query1.eof do

    > begin

    > --> combobox2.items.add := Query1.FieldByname('year').asstring;

    > Query1.Next;

    > end;

    > end;

    >

    > 에러가 나는데요 -->에서 not enough actual parameter,

    > 그리고 year가 숫자거든요. 그래서 전 asinteger로 걍 했는데

    > format해서 써야 하나요.?

    >

    > 다시한번 답변부탁드릴게요...그럼 즐코하셈요...

  • Profile
    윤순상 2001.04.23 20:41
    kylix wrote:

    > function Add(const S: string): Integer;

    >

    > combobox.items.add(넣을 문자열);

    >

    > 윤순상 wrote:

    > > 모름이 wrote:

    > > > 윤순상 wrote:

    > > > > 님들 한가지 물어볼게요...

    > > > > DB에서 한 필드의 내용을 select 했어요..

    > > > > 그런데 이 필드의 행들을 combobox의 items에 넣을려고 합니다.

    > > > > combobox.items.add := ?

    > > > > 물론 위에선 query로 select 해놨져.

    > > > > ? 에 fieldbyname('id').asinteger; next;하묜 안되던데

    > > > > 이부분에 대해서 설명좀 부탁드릴게요...

    > > >

    > > > while문으로 돌리셨나여..?

    > > >

    > > > while not query1.eof do

    > > > begin

    > > > combobox.items.add := fieldbyname('id').asstring;

    > > > query1.next;

    > > > end;

    > > > 대충 이런씩으로 흐미..대충 생각 난데로 하였습니다.. 구럼 이만....

    > >

    > > while 문을 돌렸거든요... 첨부터..그런데 자꾸 에러가 나요...제가 짠 소스입니다.

    > > 한번 봐주세요...그리고 답변 정말 감사드립니다.

    > >

    > > procedure Tsearch.FormCreate(Sender: TObject);

    > > begin

    > > query1.DatabaseName := dm.Db.DatabaseName;

    > > with query1 do

    > > begin

    > > close;

    > > sql.clear;

    > > sql.add ( 'select distinct substr(date,1,4) year from mylife' );

    > > try

    > > open;

    > > except

    > > application.messagebox(pchar('조회중에러발생'),'확인',mb_ok);

    > > exit;

    > > end;

    > >

    > > While not Query1.eof do

    > > begin

    > > --> combobox2.items.add := Query1.FieldByname('year').asstring;

    > > Query1.Next;

    > > end;

    > > end;

    > >

    > > 에러가 나는데요 -->에서 not enough actual parameter,

    > > 그리고 year가 숫자거든요. 그래서 전 asinteger로 걍 했는데

    > > format해서 써야 하나요.?

    > >

    > > 다시한번 답변부탁드릴게요...그럼 즐코하셈요...



    님 감사합니다. items.add가 function이군요. 이것찾느라고 이상한것만 다 해봤네...