Mailinglisten-Archive |
Markus Rietzler schrieb:
> hi,
>
> lassen sich binäre daten (gif-dateien) in einer mysql-db speichern?
Theoretisch ja, aber..
> oder ist es besser die dateien ganz normal in einem verzeichnis
> abzuspeichern
..ganz genau.
Der Grund, warum man Grafiken eigentlich nicht in der Datenbank
speichert, ist
vor allen hier zu sehen:
Nehmen wir mal an, Du programmierst einen Online-Shop und Du speicherst
wirklich alles mögliche in einer Datenbank. Du hättest den Artikelpreis
und ein Bild des Artikels in der gleichen Tabelle.
So weit, so gut. Jetzt kommt aber das Problem: Wenn Du die Datenbank
(übers Netz) sicherst, oder
wenn Du einfach eine komplette Tabelle neu uploaden möchtest, verursacht
dies eine Menge Traffic (geht ins Geld), mal
abgesehen von dem Zeitbedarf für das Update. Es ist ratsamer,
die Grafiken zentralisiert irgendwo zu speichern, nach Möglichkeit in
Kategorien aufgeteilt, da man die gleichen
Bilder ggf. auch mehrfach verwenden könnte. Der Pfad zu den Bildern
sollte auch nicht absolut, sondern relativ
sein und von Deinem Programm absolut gemacht werden, damit Du jederzeit
in der Lage bist, den Speicherort
Deiner Grafiken von A nach B zu verfrachten, ohne alle Links grossartig
umzuschreiben oder sich überhaupt
Arbeit damit machen zu müssen.
>
> und ueber einen eindeutigen namen (z.b. kundennummer) mit der db zu
> verknuepfen?
>
Die Auswahl des Dateinamens sollte nach Möglichkeit nicht nur technisch,
sondern auch für Dich
sinnvoll gestaltet sein.
Nehmen wir mal an, Du hast 20.000 Artikel, 5000 Artikelgruppen, 10.000
Untergruppen, 5000 Hersteller,
Deine Datenbank teilt sich auf in Hardware und Softwareverkauf somit
musst Du noch für alle Artikel
eine Versionsnummer des Programms speichern. Wenn jetzt der groesste
Teil der Artikel nicht für
Versionsnummern benötigt wird, ist es ratsam eine zweite Tabelle
anzulegen, die 1:1 Daten (Datenfelder: Artikel, Version)
enthält.
Gehen wir mal vom einfachsten Fall aus, denken wir uns mal einen
Dateinamen für das Produkt
"SuSe Linux" Version 6.1, Hersteller "0034", Untergruppe "0044" -:)
aus.
Ein technisch sinnvoller Dateiname wäre nur die Artikelnummer, z. B.
"12345".
Die sagt aber später nicht mehr viel aus, wenn man mal mit den Grafiken
arbeiten muss - ohne
die Datenbank beispielsweise. Einen speziellen Katalog hierfür zu
erstellen, wäre sinnlos.
Also versuchen wir einen logischen Dateinamen zu verwenden der sich aus
folgenden Daten zusammensetzt:
"00340044SuSeL0610.gif".
Was bedeutet das?
0034 ist die Herstellernummer
0044 die Untergruppe
SuSeL 5stelliger Dateiname
0610 Versionsnummer.
Prinzipiell gibt es fast unendlich viele Möglichkeiten.
Jedenfalls rate ich von einer physikalsichen Implementierung Deiner
Grafiken in eine Datenbank ab.
>
> mfg
>
> Markus Rietzler
> * Wuppertal-Forum | Wuppertal-Navigator
> * http://www.wuppertal-forum.de
> * http://www.wuppertal-navigator.de
> * eMail: markus.rietzler_(at)_wuppertal-forum.de
>
> Ronsdorfer Strasse 14 Fon: 0202.42 08 30
> 42119 Wuppertal Fax: 0202.242 24 66
> Mobil: 0171.480 77 82
--
Mit freundlichen Grüssen
Boris Köster, CNA MCP [MCSE] koester-edv_(at)_t-online.de
begin:vcard n:Köster;Boris tel;fax:02721 989403 x-mozilla-html:TRUE org:Köster-EDV;Geschäftsleitung adr:;;;;;; version:2.1 email;internet:koester-edv_(at)_t-online.de title:CNA, MCP, [MCSE] fn:Boris Köster end:vcard
php::bar PHP Wiki - Listenarchive