hy ich hab ein kleines problemchen ich habe eine text datei in der immer automatisch daten geschrieben werden
dies sieht so aus
|10:25:26|12||Lobby|Andre|
|10:32:03|22|Bier Treff|Yvonne19*|
es werden die daten immer fortlaufend in eine log geschrieben. Damit ich nun mehr übersicht über das ganze habe möcht ich das in eine MySQL db schreiben lassen um es mir so zu sortieren wie ichs gern hätte.
ich weis nicht wie ich pro spalte auslesen kann |spalte1|spalte2|
ich weis nicht wie ich das script anfangen soll hätte da jemand etwas nettes für mich?
text datei auslesen und in db speichern
-
- Posts: 774
- Joined: 2004-04-26 15:57
Re: text datei auslesen und in db speichern
Zuerst einmal solltest du die Pipe am Anfang der Zeile wegnehmenen und das ganze in ein csv verträgliches Format ändern
Wobei der Delimiter relativ egal ist, aber die meisten Scripte wollen entweder ein Tabulator oder das Semikolon.
Automatisch in Mysql weiß ich jetzt nicht, in mein Buch steht nur das hier
ist in der Mysql Shell auszuführen
ungetestet:
Code: Select all
sed 's/^[|]*//;s/[|]*$//;s/|/,/g' $datei
Automatisch in Mysql weiß ich jetzt nicht, in mein Buch steht nur das hier
Code: Select all
MySQL> load data local infile "date.csv" into table <deine Tabelle> fields terminated by ',';
ungetestet:
Code: Select all
sed 's/^[|]*//;s/[|]*$//;s/|/,/g' $datei | mysqlimport --fields-terminated-by=',' <table>
-
- Posts: 71
- Joined: 2005-09-16 15:30
- Location: Leipzig
Re: text datei auslesen und in db speichern
Ich würds einfach per PHP lösen.
Fertige Scripte gibts schon in Massen, die man nur noch leicht anpassen muss.
Oder selbst schreiben, PHP is ja keine schwere Sprache.
Fertige Scripte gibts schon in Massen, die man nur noch leicht anpassen muss.
Oder selbst schreiben, PHP is ja keine schwere Sprache.
-
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: text datei auslesen und in db speichern
Das ganze sed und PHP Gewurschtel ist doch unnötig. LOAD DATA INFILE ist so flexibel ausgelegt, dass man die Datei in oben genanntem Format direkt einlesen kann, ohne die Feldtrennzeichen zu ersetzen.
-> http://dev.mysql.com/doc/refman/5.0/en/load-data.html
-> http://dev.mysql.com/doc/refman/5.0/en/load-data.html