FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 
smartsuitefaq.martinholz.de Foren-Übersicht

Datenbankgrösse kontrollieren

 
Neues Thema eröffnen   Neue Antwort erstellen    smartsuitefaq.martinholz.de Foren-Übersicht -> Biete
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Cornelius
Moderator / CoAdmin


Anmeldungsdatum: 31.12.2004
Beiträge: 246
Wohnort: Duisburg

BeitragVerfasst am: So 02.09.2007 22:08    Titel: Datenbankgrösse kontrollieren Antworten mit Zitat

Hallo,

wir haben eine Datenbankkontrolle eingeführt. Ein Startup Script analysiert hierzu die DBF Dateien und erstellt hierzu ein Protokoll.

Das Ergebnis wird in einem Bericht zusammengefasst. http://smartsuitefaq.vol4u.de/download/DATENBANKPROTOKOLL.pdf

Das Script hierzu habe stelle ich hier vor.
Code:
Function fTbl_Protokoll( strAnalyseDatenbank As String ) As Integer
%REM
   Diese Funktion führt Protokoll über die Veränderungen der DBF Dateien einer Anwendung.
   Die Ergebnisse werden direkt in die strAnalyseDatenbank eingetragen. Diese DBF Datei muß vollständig mit Pfad angegeben werden
   Erstellung 18.5.2007 Cornelius D. Kömpel
   
   
   Datenstruktur Analyse.dbf
   Dateiname    T,40
   n-Felder      N,3
   n-Records   N,10
   Groesse      N,15
   Datum      D
   Uhrzeit      Z
   E-Datum      E
   Z-Zei         Z
   ADXsize      N,15
   DBTsize      N,15

   Datenstruktur
      Type tablerecord
         Dateiname As String
         nFelder As Integer
         nRecords As Long
         Groesse as long
         ADXsize as long
         DBTsize as long
         Datum As String
         Zeit As String
      End Type
%END REM
   
   Dim tbls As Variant
   Dim tbl_Liste List As tablerecord
   Dim strADXDatei As String
   
   Dim con As New connection()
   Dim qry As New Query()
   Dim rs As New Resultset()
   
   On Error Resume Next
   
   con.ConnectTo("dBASE IV")
   Set qry.Connection = con
   qry.TableName = strAnalyseDatenbank
   Set rs.query = qry
   Rs.Execute
   
   
   Set tbls = CurrentDocument.Tables
   
   'DBF Dateien
   Forall tbl In tbls
      tbl_Liste(tbl.FileName).Dateiname = tbl.FileName
      tbl_Liste(tbl.FileName).nFelder = tbl.Numfields
      tbl_Liste(tbl.FileName).nRecords= tbl.Numrecords
      tbl_Liste(tbl.FileName).Groesse = Filelen( tbl.Fullname )
      tbl_Liste(tbl.FileName).ADXsize = Filelen( Left(tbl.Fullname, Len(tbl.Fullname)-3) & "ADX" )
      tbl_Liste(tbl.FileName).DBTsize = Filelen( Left(tbl.Fullname, Len(tbl.Fullname)-3) & "DBT" )
      tbl_Liste(tbl.FileName).Datum = Left(Filedatetime( tbl.fullname ),10)
      tbl_Liste(tbl.FileName).Zeit = Right(Filedatetime( tbl.fullname ), 8)
   End Forall
   
   'APR Datei
   tbl_Liste(CurrentDocument.FileName).Dateiname = CurrentDocument.FileName
   tbl_Liste(CurrentDocument.FileName).Datum = Left(Filedatetime( CurrentDocument.fullname ),10)
   tbl_Liste(CurrentDocument.FileName).Groesse = Filelen( CurrentDocument.Fullname )
   tbl_Liste(CurrentDocument.FileName).Zeit = Right(Filedatetime( CurrentDocument.fullname ), 8)
   
   
   Forall ds In tbl_Liste
      Call rs.Addrow   
      Call rs.SetValue("Dateiname", ds.Dateiname)
      If ds.nFelder > 0 Then Call rs.SetValue("n-Felder", ds.nFelder)
      If  ds.nRecords > 0 Then Call rs.SetValue("n-Records", ds.nRecords)
      Call rs.SetValue( "Groesse", ds.Groesse)
      If ds.ADXsize > 0 Then Call rs.SetValue( "ADXsize", ds.ADXsize )
      If ds.DBTsize > 0 Then Call rs.SetValue( "DBTsize", ds.DBTsize )
      Call rs.SetValue("Datum", ds.Datum)
      Call rs.SetValue("UhrZeit", ds.Zeit)
      Call rs.SetValue("E-Datum", Date() )
      Call rs.SetValue("E-Zeit", Time() )
      rs.Updaterow
   End Forall
   
   
   con.Disconnect
   Delete rs
   Delete qry
   Delete con
End Function


Cornelius
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    smartsuitefaq.martinholz.de Foren-Übersicht -> Biete Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Protected by Anti-Spam ACP