Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr
  • 0

Firedac으로 ms-access db 연결한 경우, 애플리케이션을 종료하면 항상 access violation 오류가 납니다.


이동건

질문

delphi 11 Enterprise 쓰고 있습니다.

Firedac으로 ms-access db 연결한 경우, 애플리케이션을 종료하면 항상 오류가 납니다.

메시지는 아래와 같습니다. 종료시 firedac connection 을 close하고 종료하는데도 이런 메시지가 뜹니다.

Project Xxxxx.exe raised exception class $C0000005 with message 'access violation at 0x5e4a57a3: read of address 0xfeeefeee'.

원인을 모르겠습니다.  도움이 필요합니다.

그리고 TFDConnection 은 연결했으나, FDTable을 잘가져오나 FDQuery를 작성해서 오픈하면 함수 시퀀스 오류가 나타납니다.

 

Edited by 이동건
이 댓글 링크
다른 사이트에 공유하기

4 answers to this question

Recommended Posts

  • 0
On 2022. 3. 29. at 오후 3시 43분, 이동건 said:

delphi 11 Enterprise 쓰고 있습니다.

Firedac으로 ms-access db 연결한 경우, 애플리케이션을 종료하면 항상 오류가 납니다.

메시지는 아래와 같습니다. 종료시 firedac connection 을 close하고 종료하는데도 이런 메시지가 뜹니다.

Project Xxxxx.exe raised exception class $C0000005 with message 'access violation at 0x5e4a57a3: read of address 0xfeeefeee'.

원인을 모르겠습니다.  도움이 필요합니다.

단순히 FDConnection 에서 MS-access파일 오픈하고  닫고  종료하면 에러납니다. MS-Access 데이터 첨부합니다.

Conotec.zip

이 댓글 링크
다른 사이트에 공유하기

  • 0

image.png

 

procedure TForm7.FormCreate(Sender: TObject);
begin
  FDConnection1.Connected := TRUE;
end;

procedure TForm7.Button1Click(Sender: TObject);
begin
  FDConnection1.Connected := not FDConnection1.Connected;
end;

procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  FDConnection1.Connected := FALSE;
end;
 

첨부 해주신 파일로 위와 같이 테스트 하였으나  에러가 뜨지 않고 정상 작동됨을 확인 하였습니다.

11.1 에서 테스트 하였습니다.

다른 부분 확인 해 볼게 있나요 ?

이 댓글 링크
다른 사이트에 공유하기

  • 0

첨부해주신 파일로 11.1에서 VCL 애프릴케이션을 만들어서 테스트해보았습니다.

@c2design님의 답변처럼 연결과 관계없이 에러가 없이 정상 작동되어서 에러를 재현하지 못했습니다.

 

어쩌면 당연하지만, 테스트 과정에서 파악된 점을 아래와 같이 남깁니다:

TLOG 테이블에 데이터가 34만 행 이상이 있던데, 테이블을 통째로 StringGrid에 표현하려고 해보았습니다.

윈도우 32-bit로 컴파일 하여 실행 시 표현을 하지 못하고 Out of memory 오류가 발생했습니다.

이 오류는 윈도우 64-bit로 컴파일하면 해소되었습니다. 또한 윈도우 32-bit 에서 StringGrid에 표현할 때에도  TLOG 테이블을 SELECT 할 때 TOP 300000  으로 제한하여 모든 열을 표현하거나, 또는 LOGDATE 열만 전체 행을 표현할 때에는 이 메모리 부족 에러는 발생하지 않았습니다. 

이 댓글 링크
다른 사이트에 공유하기

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 질문에 답변하기...

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.