tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
1142
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    JohnDoe JohnDoe ist offline Mitglied Gold
    Registriert seit
    Nov 2001
    Beiträge
    219
    Hallo Leute,

    ich soll eine CSV-Datei ind eine MySQL-DB importieren.
    Das Problem dabei ist, dass die Einträge dieser Datei ohne Trennungszeichen aufgelistet werden. Hier ein Beispiel:


    "category ""name"" ""image_url "" ""description"" ""artikelnr"" ""price"" ""product_url"""
    "N/Schuhe ""Sportsandale"" ""http://image01.otto.de/bonprixbilder/shopposiklein/7er/klein/var1/rb097x06.jpg"" ""Sportsandale. DER Hit im kommenden Sommer! In weiter, bequemer Form, Obermaterial Baumwollvelours, Innenfutter aus Textil, Sohle aus abriebfestem Gummi."" 9336870 ""0.00"" ""http://www.zanox-affiliate.de/ppc/?3377665C50398868T&ULP=[[9336870]]"""


    Kann mir eine sagen, ob das irgendwie möglich ist. Das sind so ca. 7000 Einträge. Und ich möchte nicht jeden Eintrag manuell nachbearbeiten.

    Danke im voraus...

    Edit: Ich sehe gerade, die Datei ist Tab-getrennt. Kann man auch irgendwie danach trennen im MySQL?
    Geändert von JohnDoe (18.04.06 um 09:16 Uhr)
     
    Die schlimmsten Lügen werden oft schweigend erzählt.

  2. #2
    Avatar von michaelwengert
    michaelwengert michaelwengert ist offline Mitglied Platin
    Registriert seit
    Mar 2004
    Ort
    Heilbronn (BW)
    Beiträge
    581
    Mit MySQL Front kannst du beim Importieren einstellen was für Trennzeichen benutz werden.

    Also auch Tabulator.

    Eine Demo kannst du dir hier runterladen ( ist nicht in der Funktion eingeschränkt)
    http://www.mysqlfront.de/download.html
    fals du das Tool nicht zur Verfügung hast
    Geändert von michaelwengert (18.04.06 um 10:16 Uhr)
     
    What was hard to code should be hard to read, too******

  3. #3
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Hallo!

    Ob MySQL damit umgehen kann, weiss ich nicht.
    Aber wenn es jeweils eine Zeile ist und die Tabulatoren wirklich nur als Feldtrenner genutzt werden, könntest Du es mit PHP machen.
    PHP-Code:
    explode("/t"trim($zeile)); 
    Das gehört dann aber ins PHP-Forum.

    Gruss Dr Dau
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  4. #4
    JohnDoe JohnDoe ist offline Mitglied Gold
    Registriert seit
    Nov 2001
    Beiträge
    219
    Ich habe das ganze jetzt über die Oberfläche von 1und1 versucht. Da kam immer folgender Fehler:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
     SQL-Befehl:
     
    LOAD DATA INFILE 'comnet/import.csv' REPLACE
    INTO TABLE sportliste
    FIELDS
    TERMINATED BY '\t'
    OPTIONALLY ENCLOSED BY '"'
     
    MySQL meldet: Dokumentation
    #1045 - Access denied for user 'dbo156659452'@'%' (using password: YES)

    Kann mir einer sagen, was ich verkehrt mache?
     
    Die schlimmsten Lügen werden oft schweigend erzählt.

  5. #5
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Ups, muss natürlich \t heissen.

    Die Meldung besagt ja dass der Zugriff verweigert wurde.
    Benutzername und/oder Passwort korrekt geschrieben (Gross-/Kleinschreibung beachtet)?
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  6. #6
    JohnDoe JohnDoe ist offline Mitglied Gold
    Registriert seit
    Nov 2001
    Beiträge
    219
    Danke für eure Hilfe.

    Ich habe es jetzt mit folgendem kleinen PHP-Script gelöst:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
     
    <?
     
    // Verbindung zu MySQL aufbauen
    mysql_connect("xxxxxxx", "xxxxxxx", "xxxxxxxx");
    mysql_select_db("xxxxxxxx");
     
    //CSV Datei zeilenweise in $arr lesen
    $arr = file("import.csv");
     
    //Jede einzelne Zeile abarbeiten
    for($i = 0; $i < sizeof($arr); $i++) {
     
      //CSV Zahlen am tab trennen um die einzelen Werte zu bekommen
      $arr2 = explode("\t", $arr[$i]);
     
      //Daten in die DB schreiben
      if ($arr2[0]) {
        mysql_query("INSERT INTO sportliste VALUES('$arr2[0]', '$arr2[1]', '$arr2[2]', '$arr2[3]', '$arr2[4]', '$arr2[5]', '$arr2[6]')");
      }
    }
    ?>

    Jetzt muss ich es nur noch so hinkriegen, dass der User vorher die csv-datei über ein Formular hochladen kann, dann die Tabelle geleert wird und die neue csv importiert wird....
     
    Die schlimmsten Lügen werden oft schweigend erzählt.

  7. #7
    hOtZE hOtZE ist offline Grünschnabel
    Registriert seit
    Apr 2006
    Beiträge
    3
    Für letzteres "Problem" hilft Dir vielleicht Dieser Link
     

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 09.08.10, 12:03
  2. Nur Exceltext in ID importieren ohne Tabellenzelle
    Von Jan-Frederik Stieler im Forum Desktop Publishing (DTP)
    Antworten: 4
    Letzter Beitrag: 13.05.10, 04:42
  3. Antworten: 1
    Letzter Beitrag: 10.11.07, 18:48
  4. Antworten: 1
    Letzter Beitrag: 02.06.05, 12:23
  5. Film ist ohne Ton bei Importieren in Premiere
    Von mrshippy im Forum Videoschnitt, Videotechnik & -produktion
    Antworten: 0
    Letzter Beitrag: 20.02.04, 18:31