Skip to main content

AccessTr.neT


veri tabanı şişmesi

accessman
accessman
2
3404

veri tabanı şişmesi

#1
alıntı
bu nemenem bir şeydir

Merhaba. mdb veritabanının şişmesi genel sorun olarak görülür ve zaman zaman veritabanının optimize edilmesi gerekebilir.

Bu optimize işlemini, veritabanını indirmek, optimize etmek, sunucuya yollamak şeklinde yaparız ve bu can sıkıcıdır.

-------------------------------
veritabanınızın mutlaka yedeğini alın!
-------------------------------
Aşağıda vereceğim kodları optimize.asp olarak kaydedin. Kodun en altındaki bölümde önce db yolunu ve adını, sonra da yedek olacak dosyanın adını belirtin. Yedek bak uzantılı dosyanın adını düzeltirseniz eski mdb dosyanıza ulaşabilirsiniz. --> veritabani_yedek.bak --- veritabani_yedek.mdb şeklinde...

<%=dbbackup("veritabani/mydesign_haber.mdb","veritabani_yedek.bak")%>

Kodlar;
-------------------------------
<%
on error resume next
function dbbackup(dbyeri,dbyedek)
ad=dbyeri
dbdizin=instr(strreverse(ad),"/")
dbdizin2=instr(dbdizin+1,strreverse(ad),"/")
dbdiz=strreverse(mid(strreverse(ad),dbdizin+1,len( ad)-dbdizin))
Set objFSO = CreateObject("Scripting.FileSystemObject" )
Set objJRO = Server.CreateObject("JRO.JetEngine" )
If objFSO.FileExists(Server.Mappath(dbyeri))=true then
EskiDB = Server.Mappath(dbyeri)
YeniDB = Server.Mappath(dbdiz&"/"&dbyedek)

Set SourceFile = objFSO.GetFile(EskiDB)
SourceFile.Copy YeniDB

If objFSO.FileExists(Server.Mappath(dbdiz&"/"&dbyedek))=true then
objFSO.DeleteFile (Server.Mappath(dbdiz&"/"&dbyedek))
end if
objJRO.CompactDatabase "Data Source=" & EskiDB, "Data Source=" & YeniDB
SourceFile.Delete
Set compDB = objFSO.GetFile(YeniDB)
compDB.Copy EskiDB

end if
If objFSO.FileExists(Server.Mappath(dbyeri))=false then
dbbackup="Hata ! db bulunamadı!"
elseif err>0 then
dbbackup="Bir hata meydana geldi!"
else
dbbackup="İşlem tamam...<br><b>Veritabanınız optimize edilip, sıkıştırıldı ve bak uzantılı bir yedeği oluşturuldu Img-grin</b>"
end if
Set objJRO = Nothing
Set objFSO = Nothing
end function
%>
<%=dbbackup("veritabani/mydesign_haber.mdb","veritabani_yedek.bak")%>

-------------------------------
'Kod Bitti
-------------------------------

mdb dosyasının önceki ve sonraki boyutuna bakarak farkı görebilirsiniz.
@benbendedeilem
Son Düzenleme: 11/02/2010, 16:38, Düzenleyen: accessman.
Cevapla
#2
teşekkürler sayın accesman
Cevapla
#3
paylaşım için teşekkürler
AccessTr.neT | Hayal edebiliyorsanız yaparsınız...
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task