Ein bild in die Datenbank einfügen
-
Ich meine das aus meinem programm aus.
Wie kann ich per script ein bild einfügen?
also SQL->Add("instert into test...");
-
Ich habe da 2 Varianten (allerdings nur als PHP+MySQL-Beispiel), die Dir einen Denkanstoß geben könnten:
1. Bilddaten binär in einem BLOB-Field speichern
1.1 Tabellenspalte vom Typ LONGBLOB erstellen
1.2$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data))); $result=MYSQL_QUERY("INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) ". "VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");
2. (lokale) Pfadnamen des Bildes in ein CHAR-FIELD speichern
[ Dieser Beitrag wurde am 13.01.2003 um 09:53 Uhr von F98 editiert. ]
-
Was für ein Datenbank benutzt du denn?
Aber wie schon F98 erwähnte, in einer Tabelle ein Feld als BLOB anlegen
und dort dann das Bild binär ablegen.
-
Original erstellt von Jansen:
**DatenBank->FuegeEin(bild);
So funktioniert das bei meiner Datenbank.**
welch konstruktive antwort eines moderators.
in den meisten DB's werden bilder binär gespeichert als BLOB.
bei Paradox z.B. kannst du glaub ich mit LoadFromFile das bild in die DB einfügen.
-
Ok, F98 vielen Dank ich glaub das hilft mir weiter, da ich auch php/mysql kann ausserdem fehlte mir nur die idee.
Wenn ich das bild als blob einfüge, soll ich dann
TStream *Stream;
insert into blobtabelle('blobbild') values (Stream);schreiben?
-
Original erstellt von Matt:
welch konstruktive antwort eines moderators.Nicht wahr? Der Antwort konnte man genausoviele Informationen entnehmen wie der Frage ...
-
@ Jansen
hast ja recht
-
@Tillmann David
Prinzipiell schon . Ich würde TFileStream nehmen. Aber ich bin mir nicht ganz sicher wie es in C++ realisiert werden soll, dass im SQL-String auf einmal ein TFileSteam-Objekt auftaucht. Da wird der Compiler 100%ig meckern...
-
ja, das meinte ich ja..
Mal sehen wenn ich ne lösung finde poste ich die hier mal.
-
Such doch mal nach Blobstream in der Hilfe, da steht sicherlich auch ein Beispiel dazu.