Q&A

  • 고수님들 도와주세요(선택된레코드에 값을 입력하기)
일단 쿼리한 내용에서 레코드 순소대로 특정한 필드에 값을 update 할려고 하는데요

예를 들면

Query1.Close;

Query1.SQL.Close;

Query1.SQL.ADD('select 222,3333,4444, from db)

Query1.Open;



Query1.First;

while not Query1.Eof do

begin

.....

바로 이부분에서 현재 선택된Query1레코드의 222필드에다가

특별한값을 입력하고 싶거든요.. 아시는 분 있으면

가르쳐주세요...

......

Query.Next;

end

3  COMMENTS
  • Profile
    허춘 2000.08.11 20:36




    이성훈 wrote:

    > 일단 쿼리한 내용에서 레코드 순소대로 특정한 필드에 값을 update 할려고 하는데요

    > 예를 들면

    > Query1.Close;

    > Query1.SQL.Close;

    > Query1.SQL.ADD('select 222,3333,4444, from db)

    > Query1.Open;

    >

    > Query1.First;

    > while not Query1.Eof do

    > begin

    > .....



    > 바로 이부분에서 현재 선택된Query1레코드의 222필드에다가

    > 특별한값을 입력하고 싶거든요.. 아시는 분 있으면

    > 가르쳐주세요...

    > ......

    > Query.Next;

    > end



    first you need primary key field in you select statement for query1,

    and you'll need another query for updating.

    Query2.SQL.Clear;

    Query2.SQL.Add('Update db set bbb = :MyValue where Primarykey = :key');





    Query1.Close;

    Query1.SQL.Clear;

    Query1.SQL.ADD('select primarykey, 222,3333,4444, from db)

    Query1.Open;

    Query1.First;

    while not Query1.Eof do

    begin

    Query2.ParamByName('Key').asString := Query1.FieldByName('primarykey').asString;

    Query2.ParamByName('MyValue').asString := "특별한값"

    Query2.ExecSQL;

    Query1.Next;

    end;



  • Profile
    이성훈 2000.08.11 22:14
    답변 고마습니다.

    근디유 지금 쿼리하는 테이블에는 Primarykey 가 정의가 안된상태이거든요...

    단순한 테이블에서 다른 테이블로 insert 한다음 이레코드가 다른 테이블로 insert

    되었다는 표시를 할려고 하는데요.....



    허춘 wrote:

    >

    >

    > 이성훈 wrote:

    > > 일단 쿼리한 내용에서 레코드 순소대로 특정한 필드에 값을 update 할려고 하는데요

    > > 예를 들면

    > > Query1.Close;

    > > Query1.SQL.Close;

    > > Query1.SQL.ADD('select 222,3333,4444, from db)

    > > Query1.Open;

    > >

    > > Query1.First;

    > > while not Query1.Eof do

    > > begin

    > > .....

    >

    > > 바로 이부분에서 현재 선택된Query1레코드의 222필드에다가

    > > 특별한값을 입력하고 싶거든요.. 아시는 분 있으면

    > > 가르쳐주세요...

    > > ......

    > > Query.Next;

    > > end

    >

    > first you need primary key field in you select statement for query1,

    > and you'll need another query for updating.

    > Query2.SQL.Clear;

    > Query2.SQL.Add('Update db set bbb = :MyValue where Primarykey = :key');

    >

    >

    > Query1.Close;

    > Query1.SQL.Clear;

    > Query1.SQL.ADD('select primarykey, 222,3333,4444, from db)

    > Query1.Open;

    > Query1.First;

    > while not Query1.Eof do

    > begin

    > Query2.ParamByName('Key').asString := Query1.FieldByName('primarykey').asString;

    > Query2.ParamByName('MyValue').asString := "특별한값"

    > Query2.ExecSQL;

    > Query1.Next;

    > end;

    >

  • Profile
    허춘 2000.08.12 08:12
    이성훈 wrote:

    > 답변 고마습니다.

    > 근디유 지금 쿼리하는 테이블에는 Primarykey 가 정의가 안된상태이거든요...

    > 단순한 테이블에서 다른 테이블로 insert 한다음 이레코드가 다른 테이블로 insert

    > 되었다는 표시를 할려고 하는데요.....

    >

    OK.. depend on your query where clause and your db

    you can use query as ttable like below.

    Make sure your query requestlive = true;



    with query do

    while not eof do

    begin

    edit;

    fieldbyaname('2222').asString := 'hahahah';

    post;

    next

    end;