PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dateien in Datenbank



joey.brunner
12-01-2003, 18:13
Hi Jungs,

kann ich via Blob oder sonst wie Dateien, in eine Datenbank einfuegen. Also genau, ganze Dateien? Wenn ja wie. Habt ihr ggf. links

danke

joey

Gaert
12-01-2003, 22:53
Hallo joey.brunner!

Erstmal:
Welche Datenbank?
Welche Programmiersprache?

Wenn du willst, dass dir geholfen wirst solltest du soviele Info´s wie möglich liefern.

Da ich andere Posts von dir gelesen habe gehe ich mal von PHP und MySQL aus...



kann ich via Blob oder sonst wie Dateien, in eine Datenbank einfuegen


Nein nicht via Blob... ich würds eher mal mit INSERT versuchen ( *g* )

Also folgende Vorgehensweise:
1. Eine Tabelle mit einem Feld mit Typ BLOB anlegen.
2. Mit fopen() und fread() gewünschte Datei auslesen.
3. Gelesene Daten mit mysql_escape_string() escapen.
4. Mit nem normalen INSERT Statement in das Blob Feld der Tabelle einfügen.

Fertig!
__________-

Hinweis:
Auch Felder vom Typ BLOB sind nicht "unendlich" groß... auch die Datenbank gibt gewisse maximal Größen vor!

MySQL schreibt hierzu:

The maximum size of a BLOB or TEXT object is determined by its type, but the largest value you can actually transmit between the client and server is determined by the amount of available memory and the size of the communications buffers. You can change the message buffer size, but you must do so on both the server and client ends. See section 5.5.2 Tuning Server Parameters.

joey.brunner
14-01-2003, 10:36
danke!... da ist es das beste, wenn ich noch den mime typ des files auslese, damit ich weiss, um was es sich handelt... (binary, php, html oder was auch immer..)

wie stelle ich das an?

danke

joey

Gaert
14-01-2003, 16:09
Brauchst du nicht denn:

MySQL Doku: (denn wer lesen kann ist klar im Vorteil :D)

The only difference between BLOB and TEXT types is that sorting and comparison is performed in case-sensitive fashion for BLOB values and case-insensitive fashion for TEXT values. In other words, a TEXT is a case-insensitive BLOB.

Lies die Datei einfach mit fread ein und schreibs in das Feld (vorher magic quotes ausstellen nicht vergessen!).