Ralf Eggert: Select into outfile

Tach,

ich möchte meine MySQL Tabellen mittels SELECT INTO OUTFILE
in eine Textdatei schreiben, um den Datenbestand bei Bedarf
wieder per LOAD DATA INFILE hochladen zu können. Irgendwie
klappt das auf meinem WAMP System nicht. Muss ich
unter PHP beim Erstellen der Datei noch irgendwas beachten?
Muss sie evtl.bereits zum Schreiben geöffnet sein oder
sonst was?

Danke für die Hilfe.

Gruss,

Ralf

  1. zu einfachen verwalten von mysql mit php empfehle ich phpMyAdmin von Tobias Ratschiller, du kannst es unter  http://www.phpwizard.net/phpMyAdmin/ herunterladen.

    kfichner

    1. Hi,

      danke für den Tip. Hab ich nun auch gemacht und erfolgreich auf meinem lokalen WAMP zum Laufen gebracht. Ich vermisse zwar eine Downloadfunktion, aber durch das Anzeigen im CSV Format und etwas Copy&Paste bekommt man selbiges Ergebnis. Das einzige Problem, was ich habe, ist dass der Upload zwar lokal klappt. Wenn ich es aber auf dem Server versuche, bekomme ich diverse Fehlermeldungen

      "MySQL meldet: You have an error in your SQL syntax near 'n' ' at line 1"
      oder
      "MySQL meldet: Access denied for user: 'xxxx@xxxx' (Using password: YES)" (Für xxx steht natürlich mein User und Server ;-))

      Komisch irgendwie. Hast du oder jemand anders da eine Idee?

      Danke.

      Gruss,

      Ralf

      1. Ich vermisse zwar eine Downloadfunktion, aber durch das Anzeigen im CSV Format und etwas Copy&Paste bekommt man selbiges Ergebnis.

        Was für einen MIME-Typ lieferst Du denn mit?
        Nimm "application/octet-stream", und Du hast Deinen "Download".

        Das einzige Problem, was ich habe, ist dass der Upload zwar lokal klappt. Wenn ich es aber auf dem Server versuche, bekomme ich diverse Fehlermeldungen
        "MySQL meldet: You have an error in your SQL syntax near 'n' ' at line 1"

        Dazu müßte man jetzt das passende SQL-statement sehen.

        oder
        "MySQL meldet: Access denied for user: 'xxxx@xxxx' (Using password: YES)" (Für xxx steht natürlich mein User und Server ;-))

        Kannst Du das im Dialog ausprobieren? Vielleicht sind Deine Angaben jaj wirklich verkehrt.

        1. Tach,

          also lokal funktioniert die Geschichte jetzt bei mir ohne PHPMyAdmin. Man muss halt nur wissen, dass die von SELECT INTO OUTFILE erzeugten Dateien nicht in das Verzeichnis mit den ausgeführten PHP Dateien geschrieben werden, sondern in ein Verzeichnis unter MySQL (Lokal bei mir ist das c:\mysql\data\datenbankname). Macht ja auch Sinn. Problem ist nur, dass ich es nicht hinbekommen, die Dateien in ein anderes Verzeichnis zu schreiben. Wenn ich das also auf dem Server teste, werden die Dateien irgendwo auf dem Server ins MySQL Verzeichnis geschmiert, ohne dass ich da gross nachschauen kann. Dumm irgendwie. Naja ich teste nochmal, ob ich evtl. doch ans Verzeichnis herankomme.

          Mit PHPMyAdmin werd ich mich ein andernmal ausführlicher auseinander setzen.

          Gruss,

          Ralf