simon: graphik in mySql?

Hallo Leute!

Kann ich eine Graphik oder ein Word-Dokument (*.doc, ...) in einer mySql-Datenbank speichern?

Beste Grüße

Simon

  1. Hi Simon

    Kann ich eine Graphik oder ein Word-Dokument (*.doc, ...) in einer mySql-Datenbank speichern?

    Ja, im Datentyp Blob (binary large object). Du vergrösserst damit aber
    deine Datenbank und wenn du Zugriffe auf die Datebbank hast die nicht via
    Indizes laufen, dann kannst du dir in etwa vorstellen was ein Faktor
    2 oder noch mehr für den Zugriff bedeutet (lineare Zunahme).

    Gruss Daniela

    1. Vielen Dank Daniela,

      aber mit welchem sql-Befehl kann ich z.B. ein eine Graphik in die Datenbank einbinden?

      Gruß

      Simon

      1. Hi Simon

        aber mit welchem sql-Befehl kann ich z.B. ein eine Graphik in die Datenbank einbinden?

        Ehm, mit einem normalen insert? Anstelle das du Strings oder Zahlen
        einfügst, fügst du eben Binärdaten wie die von einem Bild od Doc-File ein.

        Gruss Daniela

        1. Tut mir leid holde Daniela

          aber ich kapiere das nicht. Woher bekomme ich denn Binärdaten?!? Ich habe doch nur eine bestimmte Datei (beispiel.jpg, beispiel.doc o.ä.). Muß ich beim Insert denn nicht irgendwie den Pfad zu jener Datei angeben?

          Könntes Du vielleicht ein Beipiel nennen?

          Ich hoffe ich beanspruche Dich nicht zu sehr und Danke für die Geduld!

          Simon

          1. Hi Simon

            aber ich kapiere das nicht. Woher bekomme ich denn Binärdaten?!? Ich habe doch nur eine bestimmte Datei (beispiel.jpg, beispiel.doc o.ä.). Muß ich beim Insert denn nicht irgendwie den Pfad zu jener Datei angeben?

            Ich versuchs mal, du hast zwei Möglichkeiten, die eine ist, wirklich die Datei
            in der Datenbank zu speichern. Dazu musst du die Datei einlesen mit irgend
            einer Programmiersprache und die eingelesenen Daten dann per Insert od
            Update ins BLOB packen.

            Möglichkeit zwei ist, du speicherst nur wo die Datei sitzt in der Datenbank
            und da wo du dann was mit den Daten machst, weist du das auch und öffnest
            dann die Datei die in der Pfadangabe in dem Feld liegt. Die Pfadangabe
            in der Datenbank wäre dann ein ganz gewöhnlicher String.

            Die übliche Variante ist Möglichkeit 2.

            Könntes Du vielleicht ein Beipiel nennen?

            Nein, ich weis nicht was du an Umgebung benutzt und nur mit der MySQL
            Konsole weis ich nicht wie das geht und ob das überhaupt geht.

            Gruss Daniela *hoff das es jetzt klarer ist*

            1. Hallo Daniela!

              Ich versuchs mal, du hast zwei Möglichkeiten, die eine ist, wirklich die Datei
              in der Datenbank zu speichern. Dazu musst du die Datei einlesen mit irgend
              einer Programmiersprache und die eingelesenen Daten dann per Insert od
              Update ins BLOB packen.

              Treffer! Genau so möchte ich das.

              Könntes Du vielleicht ein Beipiel nennen?

              Nein, ich weis nicht was du an Umgebung benutzt und nur mit der MySQL

              Meine Umgebung ist ein Intranet welches neben html auch mit php und JavaScript arbeitet. Die entprechende Datei (beispiel.doc) mit einem html-Formular einzulesen ist aber kein Problem.

              Die beipiel.doc dann aber mit dem Insert (per php) auch wirklich in die MySql-Datenbank zu bringen jedoch das um so größere.

              Dies nützt wohl kaum was:

              mysql_db_query("datenbank",
                 insert table (spalte) values (D:\Word\beipiel.doc) where...);

              Aber eine andere Idee habe ich nicht und die mir bekannten Tutorials nehmen leider keinen Bezug darauf.

              Gruss Daniela *hoff das es jetzt klarer ist*

              Ich bin Dir wirklich sehr zu Dank verpflichtet. Vieleicht kannst Du mir ja diesmal auch noch antworten. Ganz ehrlich: Ich würde mir an Deiner Stelle mit anderen Anonymen nicht so viel Mühe geben. Allen Respekt.

              Herzliche Grüße

              Simon