Q&A

  • 테이블 수정이 않되요...
테이블을 불러서 자료를 수정하고...

수정버튼을 누르면...

다른 부분은 다 지워지고고...

gubun 필드와 yymd 필드만 남는데...

gubun 필드와 yymd 필드는 검색 키 입니다

제가 만든 소스를 올릴테니..

한번보고 틀린데를 알려주세요...



//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// 생산통계 자료 수정

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

procedure TFrmComn.BBtnUpdClick(Sender: TObject);

var

i : integer;

begin

with Qry1 do

begin

close;

sql.clear;

sql.add('select * from jaksi');

sql.add('where gubun = :gubun');

sql.add('and yymd = :yymd');

ParamByName('gubun').Asstring := Inttostr(RadioGroup1.ItemIndex);

ParamByName('yymd').Asstring := MEdit1.Text;

open;



StringGrid1.RowCount := RecordCount;

for i := 1 to StringGrid1.RowCount - 1 do

begin

close;

sql.clear;

sql.add('update jaksi');

sql.add('set jiyouk = :jiyouk,');

sql.add(' moun = :moun,');

sql.add(' saeng = :saeng,');

sql.add(' dansu = :dansu');



ParamByName('jiyouk').Asstring := StringGrid1.Cells[0,i];

ParamByName('moun').Asstring := StringGrid1.Cells[1,i];

ParamByName('saeng').Asstring := StringGrid1.Cells[2,i];

ParamByName('dansu').Asstring := StringGrid1.Cells[3,i];

ExecSQL;

end;

end;

SBarMsg.Panels[0].Text := '수정되었습니다.';

end;



소스입니다...

알려주세요

1  COMMENTS
  • Profile
    1999.05.31 03:13
    김동수 께서 말씀하시기를...

    > 테이블을 불러서 자료를 수정하고...

    > 수정버튼을 누르면...

    > 다른 부분은 다 지워지고고...

    > gubun 필드와 yymd 필드만 남는데...

    > gubun 필드와 yymd 필드는 검색 키 입니다

    > 제가 만든 소스를 올릴테니..

    > 한번보고 틀린데를 알려주세요...

    >

    > //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    > // 생산통계 자료 수정

    > //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    > procedure TFrmComn.BBtnUpdClick(Sender: TObject);

    > var

    > i : integer;

    > begin

    > with Qry1 do

    > begin

    > close;

    > sql.clear;

    > sql.add('select * from jaksi');

    > sql.add('where gubun = :gubun');

    > sql.add('and yymd = :yymd');

    > ParamByName('gubun').Asstring := Inttostr(RadioGroup1.ItemIndex);

    > ParamByName('yymd').Asstring := MEdit1.Text;

    > open;

    >

    > StringGrid1.RowCount := RecordCount;

    > for i := 1 to StringGrid1.RowCount - 1 do

    > begin

    > close;

    > sql.clear;

    > sql.add('update jaksi');

    > sql.add('set jiyouk = :jiyouk,');

    > sql.add(' moun = :moun,');

    > sql.add(' saeng = :saeng,');

    > sql.add(' dansu = :dansu');

    >

    > ParamByName('jiyouk').Asstring := StringGrid1.Cells[0,i];

    > ParamByName('moun').Asstring := StringGrid1.Cells[1,i];

    > ParamByName('saeng').Asstring := StringGrid1.Cells[2,i];

    > ParamByName('dansu').Asstring := StringGrid1.Cells[3,i];

    > ExecSQL;

    > end;

    > end;

    > SBarMsg.Panels[0].Text := '수정되었습니다.';

    > end;

    >

    > 소스입니다...

    > 알려주세요



    저는 델파이로 회계관리프로그램을 만들고 있구요.. 코딩상에는 문제가 없는 것 같은데 실제 테이블에 저장이 안되는 경우를 많이 있어거든요.

    제 생각에는요

    sql을 이용한 경우에는 변경된 내용이 테이블에 저장되기전에 메모리상에서 먼저 변경이 이루어집니다. 따라서 메모리상에서는 저장이 되었던 것이 프로그램이 종료되면서 테이블에 저장되지 않고 메모리에서 해제되어버리는거죠.

    그래서 저는 쿼리컴포넌트를 폼에 올리지 않고 코딩으로 생성해서 사용하고 사용이 끝나면 메모리에서 해제시켜주는 방법으로 했습니다.

    생성방법을 혹시 모르시면 아래 참고하시구요.



    procedure .....

    var

    Query:TQuery; //선언

    begin

    Query:=TQuery.create(self); //생성

    Query.databasename:='경로명';

    ..

    ..

    ..

    Query.close;

    Query.free; //메모리에서 해제

    end;



    조금이나마 도움이 되시기를....

    • 변대섭
      1999.06.02 19:13
      장헌영 께서 말씀하시기를... > Ttable,Tdatasource,TDBgrid 이렇게 세 가지를 사용해서 oracle7.3 의 한 ...
    • 1999.05.31 18:54
      장헌영 께서 말씀하시기를... > Ttable,Tdatasource,TDBgrid 이렇게 세 가지를 사용해서 oracle7.3 의 한 ...
    • 김태균
      1999.05.31 18:11
      장헌영 께서 말씀하시기를... > Ttable,Tdatasource,TDBgrid 이렇게 세 가지를 사용해서 oracle7.3 의 한 ...
    • 박성훈
    • 1999.05.31 04:34
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.31 05:38
      아래 말씀하신것은 전혀 컴포트와 상관이 없습니다. 달려있는 프린터의 제어코드들마다 틀립니다. 또, 프...
    • eojin
    • 1999.05.31 02:42
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.31 05:42
      쩝.. 대단한 대답은 아니구요... ASyncProfessional 이라는 컴포넌트가 있는데 이것안에 VT100, ANSI 처리...
    • 이정욱
      1999.05.31 05:40
      말씀하신 부분은 오토마타 입니다. 오토마타를 구현하셔야 하는데 워낙 양이 방대합니다. 여러군데에서 ...
    • 문창완
      1999.06.02 01:30
      이정욱 께서 말씀하시기를... > 말씀하신 부분은 오토마타 입니다. > 오토마타를 구현하셔야 하는데 워낙...
    • 영인
    • 1999.05.30 22:04
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.31 05:51
      Chart가 무슨 Chart를 사용하시는지... Series에 Clear라는 메소드나 Count라는 프로퍼티가 있다면 그것을...
    • 박중호
    • 1999.05.30 11:40
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 1999.05.30 12:03
      박중호 께서 말씀하시기를... > 디비를 쓸때.. > 프로그램을 실행할때 마다 > 전에 테이블에 입력했던 ...
    • 김동수
    • 1999.05.30 07:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 1999.05.31 03:13
      김동수 께서 말씀하시기를... > 테이블을 불러서 자료를 수정하고... > 수정버튼을 누르면... > 다른 부...
    • 양정석
    • 1999.05.30 07:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.30 10:16
      헉.. 이질문은 아래질문보다 더 광범위 하네요. 가장 좋은 방법은 '책' 한권을 구입하셔서 보세요. 이 질...
    • 한 재
    • 1999.05.30 05:41
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.30 10:14
      너무 질문이 광범위하네요... 메모컴포넌트에 내용이 뜨게하시려면... 콤보박스의 OnChange이벤트에 If ...
    • 한 재
      1999.05.31 10:14
      답장을 주셔서 감사합니다. 그런데 제가 질문을 잘못한 것 같군요. 다시 한번 부탁을 드립니다. 예를 ...
    • 조갑손
    • 1999.05.30 04:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 유수
      1999.06.04 01:57
      안녕하세요. TitleChange이벤트에서 GetTitle이나, GetAuthor등으로 곡명, 제작자등을 알 수 있습니...
    • 김동수
    • 1999.05.30 02:58
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 1999.05.30 04:11
      김동수 께서 말씀하시기를... > 안녕하세여~ > 검색을 하는건 되는데... > 레코드 갯수를 제어 못 하네...
    • 권창진
    • 1999.05.29 23:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.30 10:06
      한델(http://www.delphi.co.kr) 자료실에 있는 권용길님의 IS동영상을 참고하세요. 권창진 께서 말씀하...
    • 박중호
    • 1999.05.29 22:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 1999.05.30 04:19
      박중호 께서 말씀하시기를... > 출력할때.. > 오름차순으로 하려고 하는데요.. > 출력폼에 이렇게 소스...
    • 바이도
    • 1999.05.29 21:31
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.30 23:53
      아.. 드뎌 이해를 했습니다. 즉, 00 00 00 01 이 들어오면 1이구.. 00 00 00 10 이 들어오면 2.. 즉, 이...
    • 이정욱
      1999.05.30 10:09
      음냐.. 뒤에 들어오는 글자가 무엇인지는 정확지 않습니다만... 만약 그냥 12라는 스트링을 12라는 Intege...
    • 서희영
    • 1999.05.29 20:13
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 1999.05.30 04:16
      서희영 께서 말씀하시기를... > 엑세스 디비로 된것을 dbf화일로 바꾸려고 하는데.. > field type이 맞지...
    • 서희영
      1999.05.31 18:48
      한 께서 말씀하시기를... > 서희영 께서 말씀하시기를... > > 엑세스 디비로 된것을 dbf화일로 바꾸려고 ...
    • 1999.06.01 09:57
      > 우선 제가 디비 형식을 바꿀때 데이터를 하나하나 Query해서 > 새로 저장시키는 방법이 맞는지 그방법밖...
    • 이호선
    • 1999.05.29 20:03
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.30 10:11
      음.. Diamond를 구입하신건가요? 다이아몬드에서는 DAO를 사용합니다. DAO3.5를 같이 배포해야하는데 그...