2012-06-11 5 views
5

Ich habe einige Formulare in Access 2010 gemacht und ich füge das Firmenlogo zum Headerformular hinzu. Dieses Bild ist .jpg und Größe von ihm ist 70KB. Ich weiß nicht, warum Größe von .mdb sofort von 4 MB auf 12 MB erhöht? (Einige Formen und das gleiche Logo) Vielleicht gibt es einige Möglichkeiten der Bildkompression?Warum Größe von .mdb dreimal mit kleinem Bild wächst?

+1

Jemand mit Kenntnis der Access 2010 insbesondere sollte dies beantworten, aber in älteren Versionen von Access-Bilder wurden in ihrem komprimierten Format und so das Hinzufügen eines kleinen JPG könnte drastisch erhöhen DB Größe nicht gespeichert. Haben Sie versucht, die DB zu komprimieren, um zu sehen, ob das einen Unterschied macht? – pstrjds

+0

Komprimierung ändert sich nicht viel. In meinem Fall waren es 12,4 MB und jetzt sind es 11,9 MB. – mathewM

+0

@pstrjds Ich bin nicht genau sicher, wie das funktioniert, aber mdb ist das ältere Format und, ich vermute, unterlag der Bloat, die ein Problem für die älteren Versionen war. Ich frage mich, ob es sich lohnt, das accdb-Format auszuprobieren? – Fionnuala

Antwort

4

Entnommen http://office.microsoft.com/en-us/access-help/store-images-in-a-database-HP005280225.aspx

... "Doch das Einbetten Bilder schnell die Größe Ihrer Datenbank aufblasen kann und führen Sie es langsam laufen. Dies gilt insbesondere, wenn Sie speichern GIF und JPEG-Dateien, Da OLE zusätzliche Bitmap-Dateien erstellt, die Anzeigeinformationen für jede Ihrer Bilddateien enthalten, und können diese zusätzlichen Dateien größer als Ihre Originalbilder sein.In Darüber hinaus unterstützt diese Methode nur die Windows Bitmap (.bmp) und Device Independent Bitmap (.dib) Grafikdateiformate. Wenn Sie möchten zu Anzeige anderen gängigen Arten von Bilddateien wie GIF und JPEG Bilder, müssen Sie zusätzliche Software installieren. "...

Um zu erklären, wie diese Bitmap-Dateien gespeichert sind, bietet der Link unten, um mehr Erklärung als die Microsoft-Website:

von http://www.ammara.com/support/kb/showkbe5cc.html

Genommen ... "OLE Linking & Embedding ist eine Technik, die von Microsoft Access zu store 'Objekte' in der Datenbank Tischen.Die Technik verwendet verlässt sich auf die zugehörige externe Anwendung zum Speichern, Präsentieren und Bearbeiten der Daten. In einigen Fällen wird ein zusätzliches unkomprimiertes 'Vorschau'-Bild in der Tabelle gespeichert (auch beim Verknüpfen) . Dieses Vorschaubild wird für schnellere Anzeige der Daten verwendet, oder wenn die Serveranwendung nicht verfügbar ist. Dies kann einen massiven Overhead verursachen. Wenn Sie speichern JPEG Bilder die nicht komprimierte Vorschau kann zehn- oder zwanzigmal sein die tatsächliche Bildgröße, wodurch die Größe der Datenbank zu Rakete. "...

Also, wenn Sie ein Bild fallen auf Ein Formular in MS Access, unkomprimierte Bilddaten werden in den Systemtabellen gespeichert.Dies ist tatsächliche unkomprimierte Tabellendaten, so eine kompakte und Reparatur kann wenig Hilfe bieten

Die allgemeine Problemumgehung scheint den Pfad zum Bild in gespeichert werden eine Datenbanktabelle, und diesen Weg, um das Bild auf dem Formular aufzurufen.

+1

danke für die Formatierungen, @EBarr! Es sieht jetzt viel besser aus! – EastOfJupiter

+0

Ich bin froh, dass ich ... nur im Leerlauf surfen kann. – EBarr

1

ich weiß nicht, warum (und ich weiß nicht ca re) aber ich habe dieses Verhalten auch schon bemerkt. Meine Problemumgehung für Firmenlogos oder ähnliches ist es, sie in EINE Form einzufügen, die ich dann als Unterformular einfüge, wo immer ich sie brauche. Es hat den zusätzlichen Vorteil, dass wenn sich das Logo eines Tages ändert, es nur einen Ort zum Aktualisieren gibt.

Verwandte Themen