Soru Mdb dosya büyüklüğü

Katılım
17 Haziran 2008
Mesajlar
1,836
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Merhaba arkadaşlar;

Veritabanı dosyası olarak mdb biçimini kullanmaktayım. Resim verisi içeren ( "Uzun ikili veri" ) kayıtlar oluşturuyorum.

Her yeni kayıtta dosya boyutu artıyor .

Kayıt sildiğimde ise dosya boyutu düşmüyor... hatta veritabanı içinden ilgili Tabloyu sildiğim halde yinede boyutu düşmüyor.

Kayıt sildiğimde ; veritabanını boyutunu düşürmenin bir yolu varmıdır ?

Yardımcı arkadaşa şimdiden Teşekkürler.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,582
Excel Vers. ve Dili
Pro Plus 2021
Veritabanını sıkıştır ve onarı deneyin.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
MDB dosyasını "compact" yapmak işinize yarayabilir....

Not: Veysel Beyin cevabını sonradan gördüm, aynı şeyden bahsediyormuşuz...


Kod:
Sub Test()
    'Haluk - 01/01/2019
    '
    Dim DB As Object
    Dim daoDBEngine As Object
    Dim MyDb As String, NewDb As String
    Dim Len1 As Long, Len2 As Long
   
    On Error Resume Next
        Set daoDBEngine = CreateObject("DAO.DBEngine")
        Set daoDBEngine = CreateObject("DAO.DBEngine.36")
        Set daoDBEngine = CreateObject("DAO.DBEngine.120")
    On Error GoTo 0
   
    MyDb = "C:\TestFolder\MyDb.mdb"
    NewDb = "C:\TestFolder\NewDb.mdb"
   
    Len1 = FileLen(MyDb)
   
    If Dir(MyDb) = Empty Then
        MsgBox MyDb & " bulunamadi, kodlar sonlandirilacak ...."
        Exit Sub
    End If
   
    If Not Dir(NewDb) = Empty Then Kill NewDb
   
    daoDBEngine.CompactDatabase MyDb, NewDb
   
    Len2 = FileLen(NewDb)
   
    MsgBox "Orjinal dosya boyutu : " & Format(Len1, "#,##0.00") & " byte" & vbCrLf & vbCrLf _
           & "Yeni dosya boyutu  : " & Format(Len2, "#,##0.00") & " byte" & vbCrLf & vbCrLf _
           & "Fark : " & Format((Len2 - Len1), "#,##0.00") & " byte"
    Kill MyDb
    Name NewDb As MyDb
    Set daoDBEngine = Nothing
End Sub
.
 
Katılım
17 Haziran 2008
Mesajlar
1,836
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Veyselemre ;

Haluk;


Hocam çok teşekkür ediyorum. Tamamdır... Elinize sağlık.
 
Üst