Forum

Acces Veritabanı Bo...
 
Bildirimler
Hepsini Temizle

Acces Veritabanı Boyutunun artma Problemi

7 Yazılar
2 Üyeler
0 Reactions
526 Görüntüleme
(@emretan)
Gönderiler: 7
Active Member
Konu başlatıcı
 

. Şuan access kullanan bir şirkette staj yapıyorum. veritabanında problem var. sistem söyle  = bir triger sürekli mail atılıp atılmadıgını kontrol ediyor siparis girilmişsse sisteme o adrese mail atıyor. trigger calısıp mail atma işi bittikten sonra görev yöneticisinde veritabani boyutu sürekli artıyor,hiçbir işlem yapılmadıgı halde. Bu konuda yardımcı olabilir misiniz.

 

 
Gönderildi : 10/07/2013 19:01

(@riza-sahan)
Gönderiler: 18032
_
 

Merhaba, mutlaka bir yere yazıyordur access 2gb a kadar sorun çıkarmaz. Compress toollar ile sıkıştırablirsiniz.

1984 doğumluyum. 4 yaşından bu yana İstanbul’da yaşıyorum. Sırası ile aşağıdaki okullarda eğitim gördüm. Paşaköy ilkokulu (1990-1995) Kartal Zekeriyya Güçer İlköğretim Okulu(1995-1998) Ümraniye Teknik ve Endüstri Meslek Lisesi Bilgisayar Bölümü(1998-2001) Kocaeli Üniversitesi Bilgisayar Programcılığı(2002-2004) Anadolu Ünv. İşletme Fakültesi(2006-2009) Lise yıllarından sonra bir bilgisayar firmasının teknik servisinde mesleğe merhaba dedim. Outsource olarak Citibank ytl ve bina taşınma projesinde yer alarak 8 ay görev yaptım. Bu görevden sonra şu an çalışmakta olduğum yerde bilgi işlem sorumlusu olarak göreve başladım ve 18 yıldır görevimin başındayım.

 
Gönderildi : 10/07/2013 23:49

(@emretan)
Gönderiler: 7
Active Member
Konu başlatıcı
 

Veritabanını açıp kapayınca tekrar azalıyor boyutu. Bide bu compress toollar arşivleme mi yapıyor yoksa veriyi mi sıkıştırıyor geçiçi olarak.

 
Gönderildi : 11/07/2013 12:28

(@riza-sahan)
Gönderiler: 18032
_
 

Sıkışacak seviyede ise sıkıştırıyor bir nevi sql dbde olfuğu gibi shrink yapıyor.

1984 doğumluyum. 4 yaşından bu yana İstanbul’da yaşıyorum. Sırası ile aşağıdaki okullarda eğitim gördüm. Paşaköy ilkokulu (1990-1995) Kartal Zekeriyya Güçer İlköğretim Okulu(1995-1998) Ümraniye Teknik ve Endüstri Meslek Lisesi Bilgisayar Bölümü(1998-2001) Kocaeli Üniversitesi Bilgisayar Programcılığı(2002-2004) Anadolu Ünv. İşletme Fakültesi(2006-2009) Lise yıllarından sonra bir bilgisayar firmasının teknik servisinde mesleğe merhaba dedim. Outsource olarak Citibank ytl ve bina taşınma projesinde yer alarak 8 ay görev yaptım. Bu görevden sonra şu an çalışmakta olduğum yerde bilgi işlem sorumlusu olarak göreve başladım ve 18 yıldır görevimin başındayım.

 
Gönderildi : 11/07/2013 13:42

(@emretan)
Gönderiler: 7
Active Member
Konu başlatıcı
 
ACCESS FORMUNUN TİMER EVENTİNE HER dakikada bir çalışacak şekilde kodlar yazdım, access ve bahsettiğim form bir sunucu üzerinde sürekli açık bu kodlar outlook aracılığı ile mail gönderiyor. sistem sorunsuz çalışıyor, dk da bir çalışmasında sorun yok, mail atmasında sorun yok.ama sorunum bu accessin kurlu olduğu sunucunun memory kullanımının sürekli artması ve yaklaşık 1 gün sonra memory kullanımının %100 olmasından dolayı kilitlenmesi. bunu nasıl engelleyebilriim. kullandığım kodlar aşağıdadır.
Option Compare Database
Sub MAILTRG1_A()
DoCmd.OpenQuery "MAILTRG1_01", acViewNormal, acAdd
'DoCmd.OpenQuery "MAILTRG2_01", acViewNormal, acAdd
End Sub
'süreci sevkedildi olan faturaların satınalmacıya mail gönderimi
Sub MAILTRG3_B(Optional AttachmentPath)
On Error GoTo HATA
  Dim MyDB As Database
  Dim MyRS As Recordset
'  Dim MYRScc As Recordset
  Dim objOutlook As Outlook.Application
  Dim objOutlookMsg As Outlook.MailItem
  Dim objOutlookRecip As Outlook.Recipient
  Dim objOutlookAttach As Outlook.Attachment
  Dim SIPARISID As Integer
  Dim upd As String
  Set MyDB = CurrentDb
Set MyRS = MyDB.OpenRecordset("MAILTRG3_01")
'Set MYRScc = MyDB.OpenRecordset("A01_TRG01CC")
If MyRS.EOF And MyRS.BOF Then
Exit Sub
  Else
  MyRS.MoveFirst
  Set objOutlook = CreateObject("Outlook.Application")
  Do Until MyRS.EOF
  Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
        With objOutlookMsg
        Set objOutlookRecip = .Recipients.Add(MyRS![EMAIL])
'  If Not (MYRScc.EOF And MYRScc.BOF) Then
'  MYRScc.MoveFirst
'  Do Until MYRScc.EOF
'  If MYRScc![STATU] = MyRS![STATU] Then
'  Set objOutlookRecip = .Recipients.Add(MYRScc![EMAIL])
'  MYRScc.MoveNext
'  Else
'  MYRScc.MoveNext
'  End If
        objOutlookRecip.Type = olTo
        .SUBJECT = "Sisteme Yeni Siparişiniz Eklendi"
        .HTMLBODY = "Aşağıda detayı verilen sipariş yöneticiniz tarafından size atanmıştır." _
& "<br />" _
& "<br /><strong>" & "STF No : </strong>" & MyRS![STFNO] _
& "<br /><strong>" & "Sipariş ID : </strong>" & MyRS![SIPARISID] _
& "<br /><strong>" & "STF Tarihi : </strong>" & MyRS![STFTAR] _
& "<br />" _
& "<br /><strong>" & "Ülke ve Şantiye : </strong>" & MyRS![ULKE] & " - " & MyRS![SANTIYE] _
& "<br /><strong>" & "Şehir : </strong>" & MyRS![SEHIR] _
& "<br /><strong>" & "Termin : </strong>" & MyRS![TERMIN] _
& "<br /><strong>" & "Sipariş Veren : </strong>" & MyRS![SIPVERENAD] _
& "<br /><strong>" & "Malzeme Tanımı : </strong>" & MyRS![MLZTANIM] _
& "<br /><strong>" & "Sipariş Durum Açıklaması : </strong>" & MyRS![SIPDURUMA] _
& "<br /><strong>" & "Önemli Not : </strong>" & MyRS![ONEMLINOT] _
& "<br />"
        If Not IsMissing(AttachmentPath) Then
           Set objOutlookAttach = .Attachments.Add(AttachmentPath)
        End If
        For Each objOutlookRecip In .Recipients
           objOutlookRecip.Resolve
           If Not objOutlookRecip.Resolve Then
             Exit Sub
           End If
        Next
        .Send
       End With
     SIPARISID = MyRS![SIPARISID]
      upd = "UPDATE SIPARIS_YEREL SET SIPARIS_YEREL.MAILT1= 'A' WHERE ((SIPARIS_YEREL.SIPARISID) = " & SIPARISID & ");"
       DoCmd.RunSQL upd
      MyRS.MoveNext
      Loop
   Set objOutlookMsg = Nothing
   Set objOutlook = Nothing
      End If
      Exit Sub
HATA:
error_no = Err.Number
Call ERRORMAIL
End Sub
Sub ERRORMAIL()
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient
Dim adminmail As String
'Dim error_tx As String
Set objOutlook = CreateObject("Outlook.Application")
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
With objOutlookMsg
adminmail = """"""
'If IsNull(DLookup("[ErrorString]", "ERROR", ErrorCode = error_no)) = False Then
'error_tx = DLookup("[ErrorString]", "ERROR", ErrorCode = error_no)
'End If
'Debug.Print error_tx
Set objOutlookRecip = .Recipients.Add(adminmail)
        objOutlookRecip.Type = olTo
        .SUBJECT = "Satınalma Operasyon Takip sistemi hata bildirimi" & error_no
        .HTMLBODY = "Satınalma Operasyon Takip sisteminde hata oluştu : " & error_no
        .Send
End With
Set objOutlook = Nothing
Set objOutlookMsg = Nothing
error_no = """"
End Sub
timer formuda şöyle:
Private Sub Form_Timer()
'Dim rs01 As New ADODB.Recordset
'sayacx = sayacx + 1
'sayac = Time
saat = Time
'sn = Format(Time, "ss")
If Format(Time, "ss") = 30 Then
Call MAILTRG1_A 'personeli girilen yeni siparişleri ve yeni faturaları yerel tabloya ekle
'Call MAILTRG1_B 'personeli tanımlanan siparişin sipariş verene mail gönderimi
'Call MAILTRG2_B 'süreci sevkedildi olan faturaların satınalmacıya mail gönderimi
Call MAILTRG3_B 'satınalmacısı atanan siparişlerin mail gönderimi
End If
End Sub
 
Gönderildi : 11/07/2013 20:00

(@emretan)
Gönderiler: 7
Active Member
Konu başlatıcı
 

http://www.cozumpark.com/forums/thread/389614.aspx  konuyu ve kodları buraya taşıdım . bi bakarsanız çok memnun olurum.

 
Gönderildi : 12/07/2013 21:14

(@emretan)
Gönderiler: 7
Active Member
Konu başlatıcı
 

sanırım cevapsız kalacak.

 
Gönderildi : 15/07/2013 15:57

Paylaş: