Q&A

  • DBGrid 상에서 Insert문제좀...
제가 짜는 프로그램은 DBGrid을 이용하여 한 레코드 단위로 바로 바로 데이터 베이스을 Access하는프로그램을 짜고 있습니다.

그런데 문제가 있어 이렇게 글을 올리게 되었습니다.



그럼 본론으로 들어가서....

Query1.CachedUpdates := True; 로 설정하고요..데이타를 한행단위로 바로바로 입력하도록 하고 싶습니다.(제가 짠 예제 프로그램을 밑에 첨부합니다.)



그런데.. Insert시에만 DBGrid상에서 이상하게 나오더군요.

실제로 데이터는 정상적으로 입력이 되는데 DBGrid상에는 입력한 데이터가 반복적으로 나타나더라고요. 제가 방법이 틀린것인지.. 아니면 다른 방법으로 했야 하는지 했야 하면 어떻게 해야 하는지 좀 가르쳐 주시겠습니까?



아! 그리고요.

query1.commitupdates;를 사용하니 위와는 반대로 입력은 되는데 DBGrid 상에서는 입력한 데이터가 안나타나더군요. 좀 가르쳐 주십시요....



procedure TForm1.Query1BeforePost(DataSet: TDataSet);

begin

database1.StartTransaction ;

end;



procedure TForm1.Query1AfterPost(DataSet: TDataSet);

begin

try

Query1.ApplyUpdates ;

database1.Commit;

except

database1.Rollback ;

end;

end;



1  COMMENTS
  • Profile
    변대섭 1999.05.25 00:39
    우민석 wrote:

    > 제가 짜는 프로그램은 DBGrid을 이용하여 한 레코드 단위로 바로 바로 데이터 베이스을 Access하는프로그램을 짜고 있습니다.

    > 그런데 문제가 있어 이렇게 글을 올리게 되었습니다.

    >

    > 그럼 본론으로 들어가서....

    > Query1.CachedUpdates := True; 로 설정하고요..데이타를 한행단위로 바로바로 입력하도록 하고 싶습니다.(제가 짠 예제 프로그램을 밑에 첨부합니다.)

    >

    > 그런데.. Insert시에만 DBGrid상에서 이상하게 나오더군요.

    > 실제로 데이터는 정상적으로 입력이 되는데 DBGrid상에는 입력한 데이터가 반복적으로 나타나더라고요. 제가 방법이 틀린것인지.. 아니면 다른 방법으로 했야 하는지 했야 하면 어떻게 해야 하는지 좀 가르쳐 주시겠습니까?

    >

    > 아! 그리고요.

    > query1.commitupdates;를 사용하니 위와는 반대로 입력은 되는데 DBGrid 상에서는 입력한 데이터가 안나타나더군요. 좀 가르쳐 주십시요....

    >

    > procedure TForm1.Query1BeforePost(DataSet: TDataSet);

    > begin

    > database1.StartTransaction ;

    > end;

    >

    > procedure TForm1.Query1AfterPost(DataSet: TDataSet);

    > begin

    > try

    > Query1.ApplyUpdates ;

    > database1.Commit;

    > except

    > database1.Rollback ;

    > end;

    > end;

    >



    Transaction의 event 가 틀렸네요.



    FormShow Event에서 StartTransaction 해주시고

    저장버튼의 Try...Except 문에서

    Commit, Rollback해주셔야 함다.



    참고로 저는 query의 beforepost event에서 키값체크등의
    • 이상석
    • 1999.05.25 00:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 01:26
      이상석 wrote: > 안녕하세요 이상석입니다. > 다름이 아니오라 델파이 4에서 DateTimePicker 에서 날짜만...
    • 지니
    • 1999.05.25 00:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 02:48
      아래 답변에 SendData 프로시져입니다 라는것이 있습니다. 그것을 참고하세요. 여기서 SendData라는 키워...
    • 영인
    • 1999.05.25 00:35
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.25 01:53
      type tmynum=set of [1..20]; 문장 에러가 나는 군요.. 저도 잘쓰지 않아서 헬프를 참고 했는데 아래...
    • 신인재
      1999.05.25 02:12
      type tmynum= set of 1..90; var mynum:tmynum; aa : Boolean; begin mynum:=[1,2,3,4,10,20...
    • 왕초
    • 1999.05.25 00:32
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.05.25 03:57
      왕초 wrote: > DLL 사용시에 변수 사용 질문입니다.. > 정적 DLL를 사용하고 있고요.. > DLL 안의 함수...
    • sunhee
    • 1999.05.25 00:28
    • 1 COMMENTS
    • /
    • 0 LIKES
    • KJW
      1999.06.04 06:59
      sunhee 께서 말씀하시기를... > 안녕하세요. 선희덕이라고 합니다. > > A라는 프로그램에서 B라는 프...
    • 고부성
    • 1999.05.25 00:17
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 03:02
      함수인자로 사용하세요. 만약 계산식이 더하는것이라면... function Add(a,b ; integer) : integer; 이...
    • 이정욱
      1999.05.25 03:03
      쩝.. RxLib를 사용하세요. 그안에 RichEdit2 용 컴포넌트가 있습니다. 전진우 wrote: > TRichEdit...
    • 임태영
    • 1999.05.24 23:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 00:36
      임태영 wrote: > 안녕하세요,,, 임태영입니다. > > 서버에 있는 테이블을 사용하려고 할 때 User name...
    • 심인애
    • 1999.05.24 23:32
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 00:30
      심인애 wrote: > 전 대1 학생입니다 . > 교수님이 아래와같은 레포트를 내주셔서 고민하다 > 이렇게 ...
    • 김경수
      1999.05.25 07:25
      안녕하세요. 스택을 이용해 작성한 단순 무식하게 짠 진짜 간단한 계산기입니다. 그냥 참고로 보시라구...
    • 김경수
      1999.05.25 10:42
      안녕하세요. 화일이 업로드가 안되는것 같네요.. 그냥 복사해서 드립니다.초보라서..히 unit u_stack; ...
    • 우민석
    • 1999.05.24 23:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 변대섭
      1999.05.25 00:39
      우민석 wrote: > 제가 짜는 프로그램은 DBGrid을 이용하여 한 레코드 단위로 바로 바로 데이터 베이스을 A...
    • 박용근
    • 1999.05.24 22:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 00:20
      꼭 필요한것은 아닙니다. 공개된 시리얼 통신 컴포넌트를 사용하셔도 됩니다. 그런데 만약 ZModem같은 파...
    • 김병태
    • 1999.05.24 22:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 00:21
      이미 패치가 되어져 있는것으로 되어있습니다. 즉 해결이 되었다고 하더군요. 또 퀵리포트 정품을 사용하...
    • 고부성
    • 1999.05.24 21:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 03:16
      Edit46안에 숫자가 아닌다른문자를 쓰신것 같네요. 숫자만 변환이 가능해집니다. AccessViolation은 아...
    • 이기남
    • 1999.05.24 20:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 01:27
      모든DB파일이 같은디렉토리안에 있다면 특별히 알리아스를 변경하실 필요는 없을것 같습니다. TableName만...
    • 반정현
    • 1999.05.24 20:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 00:23
      반정현 wrote: > 저는 델파이 초보입니다. > > 시간함수 > time() > > 를 값으로 추출하여 ...
    • 이천주
    • 1999.05.24 20:04
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.24 22:17
      아래처럼 해보세요. 그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다. var netrc :...
    • 이천주
      1999.05.26 03:05
      "그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다." 그래서, 수정한 소스를 다른 분들을 ...