Moses: Format für Import in MySql

Hallo,
was ist das beste Format wenn man Daten/Tabellen in eine MySql Datenbank importieren will?
Problem ist, daß einige große Textfelder (Blobs) dabei sind - sprich excel kann man vergessen.
Bekomme diverse Datensätze die ich in die datenbank einbauen muß. Was bietet sich hier an csv? xml? Gibt es ein Format das besonders einfach zu überspielen ist, das auch Blobs verwalten kann. Gibt es Trennzeichen die besonders geeignet sind???

Dank und Grüße,
Moses

  1. Hi,

    Bekomme diverse Datensätze die ich in die DEatenbank einbauen muß. Was bietet sich hier an?

    Es bietet sicvh ein mySQL-Dump an, da dieser direkt per

    mysql < dump.mysql

    Eingespielt werden kann. Entscheiden wäre noch, welche Möglichkeiten du hast bzw. wie du den Datensatz für den Import erzeugst.

    1. yo,

      Es bietet sicvh ein mySQL-Dump an, da dieser direkt per

      mysql < dump.mysql

      das setzt aber vorraus, dass die daten schon in der mysql datenbank vorhanden sind. wenn ich das richtig verstanden habe, dann will er aber genau das erst erreichen. ich würde deswegen csv dateien benutzen.

      Ilja

      1. Hi Ilja,
        genau.
        Bei csv welches trennzeichen sollte ich verwenden ?
        Hat csv kein Problem mit langen Texten (wie ist das wenn das Trennzeichen im Datentext vorkommt wie kann man das Kennzeichnen)?

        Danke

        1. yo,

          Bei csv welches trennzeichen sollte ich verwenden ?

          ich will mich bei mysql nicht so weit aus dem fenster legen, bin darauf schon oft genug reingefallen. ich kenne mich da mehr mit dem SQLloader von oracle aus.

          Hat csv kein Problem mit langen Texten (wie ist das wenn das Trennzeichen im Datentext vorkommt wie kann man das Kennzeichnen)?

          ich würde es einfach mal ausprobieren oder aber die doku lesen, wenn es nicht klappt. du kannst als trennzeichen ruhig ein komma nehmen, musst dann aber texte mit dem zeichen escapen. einfach mal in die doku schauen, wie gesagtm bin kein mysql experte ;-)

          Ilja

        2. echo $begrüßung;

          Bei csv welches trennzeichen sollte ich verwenden ?
          Hat csv kein Problem mit langen Texten (wie ist das wenn das Trennzeichen im Datentext vorkommt wie kann man das Kennzeichnen)?

          Zum Aufbau des CSV-Formats siehe http://de.wikipedia.org/wiki/CSV-Datei.

          Zum Importieren kann man den SQL-Befehl LOAD DATA INFILE verwenden oder an der Kommandozeile mysqlimport. Die Parameter sind an der verlinkten Stelle beschrieben.

          echo "$verabschiedung $name";

        3. Hi,

          Bei csv welches trennzeichen sollte ich verwenden ?

          Ich nehme dafür immer ;;
          Denn sowas wird in einem Text normalerweise nicht verwendet (ist mir zumindest noch nie untergekommen, ausser als Trennzeichen)

      2. Hi,

        das setzt aber vorraus, dass die daten schon in der mysql datenbank vorhanden sind.

        Nein, das ist nicht so. Esd gibt einige Programme, die eine Exportfunktion haben um mySQL-Daten zu erzeugen. Da Moses nicht gesagt hat, woher die Daten kommen, bzw. wie die Daten erzeugt werden, kann ich natürlich auch nicht wissen, welches Format das beste ist.

        1. yo,

          Nein, das ist nicht so. Esd gibt einige Programme, die eine Exportfunktion haben um mySQL-Daten zu erzeugen. Da Moses nicht gesagt hat, woher die Daten kommen, bzw. wie die Daten erzeugt werden, kann ich natürlich auch nicht wissen, welches Format das beste ist.

          meines wissens wird ein dump immer aus der datenbank heraus gezogen, sprich die daten müssen schon in der datenbank vorhanden sein. wäre dies aber der fall, müsste er sie nicht mehr importieren. ergo kann ein dump bei seinem problem keinen sinn machen. einem dumb zu machen ist aber genau das, was du vorgeschlagen hast.

          Ilja

          1. meines wissens wird ein dump immer aus der datenbank heraus gezogen, sprich die daten müssen schon in der datenbank vorhanden sein.

            Ging aus dem Ausgansposting aber nicht hervor, hätte auxch die Übertragung von einer mySQl Datenbank in eine andere sein können.

            Desweiteren hab ich vorrausgesetzt, das es klar ist, das ich das Format der Daten meine. Womit ich einen Dump erzeuge ist völlig wurscht. Aber du hast recht, ich hätte mich klarer ausdrücken können.

    2. Hallo,
      das Problem ist, daß ich die Daten nicht aus einer MySql Datenbank bekomme sondern diese aus einer Textbasiertenumgebung kommen...
      Sprich ich muß demjenigen der mir die Datenaufbereitet sagen wie ich sie am liebsten hätte.
      Wenn ich einfach über oben genannte Funktion mysql < dump.mysql die Daten einlesen möchte, wie müssen sie dann vorliegen?

      Danke und Grüße,
      Moses