블로그 이미지
생각처럼

카테고리

전체보기 (209)
TOOL (1)
다이어리 (1)
Bit (200)
HELP? (0)
Total
Today
Yesterday

달력

« » 2025.2
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28

공지사항

태그목록

최근에 올라온 글

출처 세상은 나로부터 변화한다!!! 즐거움과희망
원문 http://blog.naver.com/dreamkss/120036154375

******************************************************************

**  MDB 압축

******************************************************************

1. MDB 압축의 의미

   - 트랜잭션이 발생한 후 MDB 내부에 임시 데이터가 삭제되지 않는데

      압축을 통해 임시 데이터를 삭제하여 MDB의 용량도 줄이고 해서

      더 잘 사용해 보자 하는 의미라는데?? ㅋ

   - 암튼 데이터 삭제된 MDB를 압축하면 압축 전의 파일에 비해 용량이

      줄어드는 것을 확인할 수 있다.

 

2. 예제

   - VB에서 테스트 해본 예제 소스이므로 파일 경로만 맞춰주면 바로 실행 됨

   - 참조에서 ADO를 추가하는 바람에 열라 고생했는데 제대로만 하면 바로

     실행 가능하다.

 

 

Private Sub CompactMDB()

    '  참조에서 Microsoft Jet and Replication Objects 2.1 library 추가 (반드시 2.1이상)

 

    Dim v_jro As jro.JetEngine
       
    Dim DBFile As String
    Dim TempFile As String

    Set v_jro = New jro.JetEngine

    DBFile = App.Path & "\test.mdb"
    TempFile = App.Path & "\temp.mdb"

    ' 이전의 임시화일이 존재하면 삭제
    If Dir(TempFile) <> "" Then
        Kill TempFile
    End If
    
    ' DB 압축해서 임시화일에 생성(Password가 설정되지 않은 경우)
    v_jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBFile & ";Jet OLEDB:Database Password=", _
                        "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & TempFile & ";Jet OLEDB:Database Password="
                                      
    
    '" 이전의 DB 삭제
    If Dir(DBFile) <> "" Then Kill DBFile

    '" 임시화일을 원래의 DB명으로 변경
    Name TempFile As DBFile
   
   Set v_jro = Nothing
End Sub

 

 

 

출처 : 데브피아 visual basic 강좌&팁 김형준(rabo) 님의 글


Posted by 생각처럼
, |

최근에 달린 댓글

최근에 받은 트랙백

글 보관함