phpbar.de logo

Mailinglisten-Archive

Re: binaere daten in einer mysql-db?`
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: binaere daten in einer mysql-db?`





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

Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive