Q&A

  • file is locked 혹은 table is busy에 대하여
DB프로그램 코딩 중에 build하고나면
'file is locked'  혹은 'table is busy'라는 Error창이
출력되는데 어떻게하면  해결이 되나요.
2  COMMENTS
  • Profile
    황준동 2002.09.13 06:08
    그거는요 테이블을 오픈한 상태에서 프로그램의 이상종료(에러나 디버깅 상태에서 종료 등)를 한 경우에 발생될 수 있습니다.
    특히, 파라독스 테이블을 사용하게 되면 파일명은 잘 기억나지 않지만, 테이블과 인덱스를 제외하고 Pdox????.??? 파일하고 무슨무슨user.??? 파일이 있는데 이 파일 두개를 지워버리면 에러가 나지 않습니다.
    하지만, 이 파일들은 다시 파일이 오픈되거나 하면 자동적으로 또 생기게 되지요. 가장 좋은 방법은 Try... Finally 를 사용해서 무슨일이 있더라도 파일을
    열었으면 꼭 닫게 하는 방법이 가장 좋을것 같습니다.

  • Profile
    조덕진 2002.09.13 23:23
    "File is Locked" 나 "Table is busy"는 예외상황 아닌가요 ?
    예외상황인 경우 try .. finally 문이 실행되지 않는 것 같던데.
    차라리, try .. except 문이 좋지 않을까요 ?

    except 절에서 DB를 완전히 닫아주고, 잠금파일을 지워주고 나서
    새로이 DB를 열어주는게 좋을 것 같은데, 제가 잘못 알고 있는 부분이
    있는지 모르겠네요.

    전 DB에 관한 오류처리는 대부분 try .. except 로 했거든요.
    키오류나, 테이블 오류등이 발생될 때 except 에서 해결해주는
    방식이 코딩은 좀 귀찮아도 프로그램이 종료되는 현상을 많이
    없앨 수 있어서 좋았거든요.

    그럼.
    • 휴초보
    • 2002.09.13 20:00
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이추형
      2002.09.14 00:31
      DBGrid의 Width를 Maximize하고 사용하시면 어떨까요? 즉, DBGrid에 ScrollBar가 생기지 않도록 한다음......
    • 이종원
    • 2002.09.13 19:08
    • 6 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.09.13 21:19
      hsr///////////////////////////////////////////////////////////////   ComboBox1.Clear; ...
    • 조덕진
      2002.09.13 19:34
      TTable을 이용해서는 여러 테이블 리스트를 읽어 들일 수 없습니다. TTable의 TableName을 동적으로 연...
    • 이종원
      2002.09.13 20:06
      설명해주신 대로 해 보았는데... 안되더라구요... TDataBase의 메소드 중에서 GetTableNames()이 없는것...
    • 조덕진
      2002.09.13 21:26
      제가 지금 사용하는 버전은 델파이6 입니다. 설명되는 부분은 델파이6을 기준으로 하겠습니다. 델파이 ...
    • 김영남
      2002.09.13 19:16
      음...그럴때 주로 사용하는게...while문장일 듯 하네요... 물론 FOR문이 WHILE문장보다는 속도는 빠르다...
    • 이종원
      2002.09.13 19:28
      우선 답변 감사합니다... 그런데 제가 궁금한 것은 밑의 소스에서 필드명을 직접 써 주는 것이 아니라... ...
    • 구민오
    • 2002.09.13 10:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조덕진
      2002.09.14 09:29
      이미지 파일의 포맷을 변경하기 위해선, 보정 작업이 필요합니다. 또한, JPG에 비해서 GIF 이미지의 화질...
    • 조덕진
      2002.09.13 23:03
      전 테스트용으로 MDB를 즐겨 사용합니다. 쿼리문 테스트가 대부분이지만, 님과 같은 에러메세지를 본 기...
    • 박병호
    • 2002.09.13 08:22
    • 1 COMMENTS
    • /
    • 0 LIKES
    • KDDG_ZZOM
      2002.09.13 18:50
      라벨을 올릴 부모콘트롤^^ 먼저 폰트를 바꾸시고 올려보세요... 즐프하세요...
    • 박기용
    • 2002.09.13 07:05
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 전형식
      2002.09.13 08:42
      저도 같은 환경에서 같은 문제를 당했지만 해결점은 찾지 못했습니다. 저의 개인적인 막연한 생각같아서는...
    • 박기용
      2002.09.23 19:44
      ....
    • 조덕진
      2002.09.13 19:15
      필드값으로 Null을 입력했다 하더라도, 필드 자료형에 의한 기본용량은 차지하게 되죠. 제 경우 문자형...
    • ▲┫┃■┃콜론
      2002.09.13 23:31
      바케릭으로 잡으면 사용된 크기만 잡히나요?? 워째튼 답변들 감사하구요~ 공부에 많은 도움이 되겠네요
    • 황준동
      2002.09.13 06:05
      물론 용량을 차지하지요.
    • 얼음섬
    • 2002.09.13 04:39
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 전형식
      2002.09.13 08:44
      Mysql을 적극 추천 합니다. RDBMS기반이라 나중에 대용량 DB쓰시기도 편하구요 ^^ 무엇보다도 공짜 라는...
    • 조덕진
      2002.09.13 05:09
      생각보다 애매한 질문인 것 같네요. File기반의 DB는 엑세스, DBase, Paradox, MS-SQL, Sybase 등 다수...
    • 엄문용
    • 2002.09.13 01:54
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김형환
      2002.09.13 18:07
    • 이상환
    • 2002.09.13 01:50
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김종화
      2002.09.24 20:29
      델파이4에 기본적으로 들어있는 퀵리포트는 2페이지 이상일때 오류나는 버그 있습니다... 저두 ...
    • 황선욱
      2002.09.13 23:55
      QuickReport가 1페이지가 넘어간다고 에러나지는 않죠. 자세한것은 preivew하는 부분의 코드를 보아야 알...
    • 햇살
    • 2002.09.13 01:23
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 황준동
      2002.09.13 06:08
      그거는요 테이블을 오픈한 상태에서 프로그램의 이상종료(에러나 디버깅 상태에서 종료 등)를 한 경우에 발...
    • 조덕진
      2002.09.13 23:23
      "File is Locked" 나 "Table is busy"는 예외상황 아닌가요 ? 예외상황인 경우 try .. finally 문이 실행...
    • 김희곤
    • 2002.09.13 01:16
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 델퐁
    • 2002.09.13 01:16
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박창범
      2002.09.13 04:25
        TPackHeader = record      szName : array[0..15] of char;  &...
    • 정성훈
    • 2002.09.13 01:02
    • 0 COMMENTS
    • /
    • 0 LIKES
    • goodlsw
    • 2002.09.13 00:38
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김수경
      2002.09.13 00:59
      Delphi 명령은 잘 모르겠고.... 쩝~ Win32 API를 써 보세요 VOID GetSystemTime(    ...
    • 이추형
      2002.09.13 00:58
      procedure TForm1.Timer1Timer(Sender: TObject); begin   edit1.text := DateTimeToStr(Now);...
    • easycp
    • 2002.09.12 23:52
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 조덕진
      2002.09.13 19:09
      영상은 PC카메라를 통해 입력받는다 하더라도, 음성은 사운드카드를 통해야 하겠죠. TV수신카드 중에서...
    • 박상윤
      2002.09.14 00:34
      VFW 컴포를 쓰시는 것 같은데.. 아마도 오디오 저장 옵션이 있을 것입니다. 어디에 붙어 있는지,. 켑...