PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bilder in MySQL



martinsuse91
23.02.06, 20:21
Hallo,
Ich hoffe, das hier ist das richtige Forum dafür.
Ich würde gerne Bilder in einer MySQL Datenbank ablegen. Irgendwie muss man dann ja ein Feld für Binärdaten haben.

Wie kann ich Dateien in der MySQL Datenbanl speichern und wieder auslesen?

Martin

Basti
23.02.06, 20:50
Hallo martinsuse91,

versuch´s mal mit:
- tinyblob (bis 255 Zeichen),
- meduimblob (bis 65.535 Zeichen) oder
- blob (1.677.215 Zeichen) als Datentyp.
Dabei bedeutet blob: binary large object. Das ist üblicherweise der Datentyp, der binäre Daten "verdaut".

Gruss Basti

Filzo
23.02.06, 21:22
Aus purem Interesse würde ich gerne wissen, warum du Bilder in der DB ablegen willst :D

martinsuse91
23.02.06, 21:37
Ich bin in der "Ich probier mal alles aus" Phase. :)

Ich habe folgenden Link gefunden: http://www.phpbuilder.com/columns/florian19991014.php3 Dort wird es einigermaßen gut erklärt.

Martin

Mr_Maniac
23.02.06, 21:45
Ich habe auch ein entsprechendes PHP-Script zum Uploaden von Dateien in eine Datenbank geschrieben... Zusammen mit dem entsprechenden Abrufen aus der selbigen...
Auch "einfach mal so" ;)

Aber ich denke, dass kann ganz nützlich sein...
Gerade, um diese Daten besser sortieren/zuordnen zu können...
Oder für Zugriffsbeschränkungen etc...
Irgendwelche Anwendungsmöglichkeiten gibt es immer ;)

Tomek
23.02.06, 21:57
vBulletin z.B. speichert standardmässig alle Anhänge, Avatare, Bilder usw. in der Datenbank ab.

martinsuse91
24.02.06, 12:28
Oder man baut ein Fotoarchivierungsprogramm auf MySQL Basis. Ist dann wahrscheinlich in manchen Sachen schneller als Apples iPhoto, das auf XML basiert.

Martin

der_dicke_alex
24.02.06, 12:34
Bilder, also Binärdaten, in der Datenbank abzulegen ist nicht unbedingt ratsam.
Es kann sich z.B. negativ auf die Performance auswirken.
Sinnvoller ist es immer, nur den Dateinamen abzuspeichern und das Bild selbst an einem bestimmten Ort im Dateisystem.
Ansonsten ist dein Schlagwort BLOB. Also BinaryLargeObject.

Tomek
24.02.06, 12:35
vBulletin unterstützt natürlich auch das Speichern dieser Daten auf dem Dateisystem, das wird z.B. bei sehr großen Foren gemacht. Zudem lassen sich auf dem Dateisystem gespeicherte Daten von den Browsern/Clients cachen, also zwischenspeichern.

martinsuse91
24.02.06, 12:54
Das ist natürlich ein Argument. Man kann ja einfach als Dateinamen einen Timestamp nehmen und in der DB ablegen. Dann erspart man sich den Aufwand mit dem wiederauslesen.

Martin