Datenbank aufgebläht

Moderator: ModerationP

Datenbank aufgebläht

Beitragvon ManfredPrefi » 14. Jan 2018, 12:16

Hallo,
es gibt zig Beiträge zu diesem Thema, aber keiner führt zum Erfolg.
Meine DB hat sich von ca. 8 MB auf ca 115 MB aufgebläht, was wahrscheinlich auf eingebettete Bilder zurückzuführen ist, zumal ich damit ziemlich herumexperimentiert habe.
Ich habe bisher folgendes unternommen:

- alle nicht mehr benötigten Formulare und Berichte gelöscht
- mehrmals alle Formulare und Berichte auf eingebette Bilder untersucht und ggf. auf 'verknüpft' umgestellt
- eine neue DB erstellt und alle Teile aus der alten DB übernommen
- die DB in BE und FE entgeteilt - die BE hat noch 450 K, die FE immer noch gut 114 MB
- mehrmals nach jedem der genannten Schritte 'raparieren und komprimieren' gestartet

Kann man irgendwie die Größe der einzelnen Formulare und Berichte abfragen, um diese gezielt zu löschen und evt. neu zu erstellen?
Ich arbeite mit ACC 2016
Was kann ich noch tun?
Gruß Manfred
ManfredPrefi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 15. Jan 2014, 21:45

Re: Datenbank aufgebläht

Beitragvon steffen0815 » 14. Jan 2018, 13:09

Hallo,
das Importieren aller Objekte in eine neue leere DB hat nicht geholfen?

Ansonsten sehe ich zunächst 3 Varianten:
1) fleißig sein, dh. nach und nach die Objekte in eine neue DB übernehmen und die Dateigröße beobachten
2) die Variante 1 automatisieren
3) Formulare und Berichte (per Code) als Textdatei ausspielen und diese Dateigrößen vergleichen

zu2)
Code: Alles auswählen
docmd.TransferDatabase

zu3)
Code: Alles auswählen
application.saveastext


Ich denke mit diesen Stichwörtern findest du vermutlich sogar einen fertigen Code.

[EDIT]zu 3) mal auf die Schnelle:
Code: Alles auswählen
Dim aobj As AccessObject
Dim tmpPfad As String
tmpPfad = Environ("TEMP") & "\exp"
For Each aobj In CurrentProject.AllForms
    SaveAsText acForm, aobj.Name, tmpPfad & aobj.Name
    Debug.Print aobj.Name, FileLen(tmpPfad & aobj.Name) \ 1024 & "kbyte"
    Kill tmpPfad & aobj.Name
Next
For Each aobj In CurrentProject.AllReports
    SaveAsText acReport, aobj.Name, tmpPfad & aobj.Name
    Debug.Print aobj.Name, FileLen(tmpPfad & aobj.Name) \ 1024 & "kbyte"
    Kill tmpPfad & aobj.Name
Next
Gruß Steffen
steffen0815
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 10850
Registriert: 15. Jan 2006, 12:15

Re: Datenbank aufgebläht

Beitragvon Nouba » 14. Jan 2018, 14:36

Vielleicht stecken ja noch Bilder in der Galerie? Rechts neben den Steuerelementen im Formularentwurfsmodus zu finden.
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Nouba
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 17106
Registriert: 13. Mär 2006, 12:55
Wohnort: Berlin

Re: Datenbank aufgebläht

Beitragvon ManfredPrefi » 14. Jan 2018, 15:09

Hallo,
zunächst danke.
@steffen0815
ich habe mal mit der 3. version begonnen. Die Liste ergibt insgesamt 1,2 MB, d.h. es dürften keine eingebetteten Bilder mehr da sein, so dass eine einzelne Übername der Formulare und Berichte nichts bringen wird.??

@Nouba
das verstehe ich nicht. Was heißt 'Galerie' - rechts neben den Steuerelementen.
Bild

Beste Grüße und verderbt euch bitte nicht den Sonntag-Nachmittag
Manfred
ManfredPrefi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 15. Jan 2014, 21:45

Re: Datenbank aufgebläht

Beitragvon ComputerVersteher » 15. Jan 2018, 11:18

Hi Manfred,

Galerie: Auf "Bild einfügen" drücken (neben Steuerelemente), wenn vorhanden erscheinen die Bilder der Galerie über "Durchsuchen".

Beim Import in neue DB, hast Du auch die MSys* Tabellen importiert? Die gespeicherten Bilder stecken wohl in MSysAccessStorage (exportiere die Tabelle mal in eine Leere DB und check die Größe).

Gruß CV
"Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."
Benutzeravatar
ComputerVersteher
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 328
Registriert: 23. Jul 2016, 18:17

Re: Datenbank aufgebläht

Beitragvon ManfredPrefi » 15. Jan 2018, 14:42

Hallo CV,
Danke für deine Hilfe, aber - Asche auf mein Haupt - sie wirft mehr Fragen als Antworten auf.
ad 1
in dieser 'Galerie' sind tatsächlich ein Sack voll Bilder, mit denen ich experimentiert habe. Die Anzeige dauert so lange, dass ich den Vorgang 3-4mal abgebrochen habe im Glauben, dass nichts passiert. Erst als ich durch einen Telefonanruf gestört wurde, kamen die Bilder zum Vorschein (vor 'Durchsuchen'). Hier liegt also offensichtlich des Pudels Kern. Ich glaube, eine weitere Suche nach der Ursache für meine riesige DB erübrigt sich.
aber:
ad 2
wie kann man diese Galerie säubern?
Es gelingt mir nicht einmal, diese Systemdateien überhaupt sichtbar zu machen, noch sie zu exportieren oder von einer leeren DB aus zu importieren, und zwar, obwohl ich herumgegoogelt habe. Alle gefundenen Hinweise zeigen eine Vorgehensweise bzw. Abbildungen, die ich so nicht vorfinde.
Ich habe - ehrlich gestanden - von der Existenz dieser Dateien bisher nicht einmal etwas gewusst; ich habe auch irgendwo gelesen, man soll die Finger davon lassen.

Was kann ich als nächstes noch tun?
Gruß Manfred
ManfredPrefi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 15. Jan 2014, 21:45

Re: Datenbank aufgebläht

Beitragvon ManfredPrefi » 15. Jan 2018, 15:10

Hallo CV
man sollte erst denken - dann sprechen (oder schreiben)
Es ist mir gelungen - naheliegend - in der Galerie die Bildchen mit rechtsAnklicken zu entfernen. Und siehe da, meine DB ist auf 1,5 MB geschrumpft. Wunderbar.
Bleibt mir immer noch die Frage, wie man zu den Systemdateien gelangen kann. Dies scheint mir für die Fehlersuche doch nützlich zu sein.
Vielleicht kannst du mir hierzu noch einen Tip geben. Danke
freundliche Grüße
Manfred
ManfredPrefi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 15. Jan 2014, 21:45

Re: Datenbank aufgebläht

Beitragvon Nouba » 15. Jan 2018, 15:24

@Manfred,

in der versteckten Tabelle MSysResources (kann über die entsprechende Eigenschaft der Navigationsleiste dargestellt werden) findest Du alle Bilder und verwendeten Themen der Datenbank. Daraus kann man manuell die Daten löschen. Alternativ kannst Du in der Bildergalerie auch über das Kontextmenü die Bilddaten jeweils einzeln entfernen.

Wenn bei einem Bildsteuerelement oder in Formular/Bericht die Bildtyp-Einstellung auf Shared (geteilt heißt das glaube ich auf deutsch?) steht, werden die Bilder in die Galerie eingefügt und können so in mehreren Objekten, ohne weiteren Speicherplatz zu beanspruchen, verwendet werden. Bild-Waisen - also Bilder, die nirgenwo verwendet werden - muss man natürlich mit einer der beiden Methoden von oben selbst entsorgen.
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Nouba
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 17106
Registriert: 13. Mär 2006, 12:55
Wohnort: Berlin

Re: Datenbank aufgebläht

Beitragvon steffen0815 » 15. Jan 2018, 20:04

Hallo,
Es ist mir gelungen - naheliegend - in der Galerie die Bildchen mit rechtsAnklicken zu entfernen. Und siehe da, meine DB ist auf 1,5 MB geschrumpft. Wunderbar.
Ich habe bisher folgendes unternommen:
......
- eine neue DB erstellt und alle Teile aus der alten DB übernommen
Passt das zusammen :roll: .
Gruß Steffen
steffen0815
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 10850
Registriert: 15. Jan 2006, 12:15

Re: Datenbank aufgebläht

Beitragvon Gast » 15. Jan 2018, 23:09

Hallo Steffens0815,
Beim Import der Daten in eine leere Datenbank habe ich Bilder und Designs
übernommen
Bild
Das muss man auch, weil sonst nicht nur die Bilder, sondern auch die Designs weg sind. Es bleibt also nichts anderes übrig, als, wie von Nouba vorgeschlagen, die Bilder einzeln aus der Galerie zu löschen oder aber aus der Tabelle MSySResources.
Auch dabei muss darauf geachtet werden, dass dieTabellenzeile
Bild
nicht gelöscht wird, da hier die Designs hinterlegt sind.
Unglücklicherweise steht diese Zeile auch irgendwo in der Tabelle, so dass sie man mit "alle Sätze löschen" mit löscht, wenn man es nicht weiß. Bei 9000 Tabellenzeilen ist man leicht versucht, dies zu tun, und erst bei 4. oder 5. Versucht kam ich auf die Idee, die Tabelle einmal zu sortieren; erst dadurch habe ich die Zeile mit den thmx entdeckt und vermutet, dass hier die Designs verborgen sind. Experten hätten dies wahrscheinlich gewusst, aber ein solcher bin ich eben leider nicht.
Da die Bilder in meiner DB sehr groß waren, war die DB schon bei der einer relativ geringen Zahl von Bildern riesig aufgebläht.
Nach dieser Lehre habe ich auch eine andere DB untersucht und dort über 9000 Bilder in der Galerie vorgefunden. Hier befanden sich die Bilder ein einem Bericht mit Etiketten in Form kleiner Farbfelder, die je nach Inhalt des Etiketts wechselten. Glücklicherweise waren die Bilder sehr klein, die DB insgesamt relativ groß, so dass mit die Aufblähung nicht aufgefallen ist. Jedes Bild wurde offensichtlich bei jedem einzelnen Etikett bei jedem Druck (auch beim Testen) in die Galerie eingefügt. Das hat natürlich auch zu einer enormen Verlangsamung beim Druck geführt, was ich wegen des ziemlich komplizierten Vorgangs als normal empfunden habe.
Zu bemerken ist, dass die Bilder als 'freigegeben' definiert waren, und zwar nicht bewusst von mir, sondern wahrscheinlich durch eine Default-Einstellung von ACCESS.
Nachdem ich die Bildeinstellung auf 'verknüpf' geändert habe, werden die Bilder nicht mehr in die Galerie geschrieben und der Druck erfolgt blitzschnell.

Ich schildere dies deshalb so ausführlich, weil dies ein Fehler ist, der sich leicht einschleicht und dem ein oder anderen Nutzer nicht bewusst ist.
freundliche Grüße
Manfred
Gast
 

Re: Datenbank aufgebläht

Beitragvon ManfredPrefi » 15. Jan 2018, 23:21

Hallo,
obiger Beitrag stammt natürlich von mir; offensichtlicht war ich zwischendurch einem 'Weg' und nicht wieder neu eingeloggt.
Gruß
Manfred
ManfredPrefi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 15. Jan 2014, 21:45


Zurück zu Access Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 10 Gäste