Archiv verlassen und diese Seite im Standarddesign anzeigen : import mysql
ich habe noch nicht viel erfahrung mit mysql
ich mochte nun folgendes machen
ich habe eine text-datei
aaaa , bbbb , cccc , dddd
aaaa , bbbb , cccc , dddd
usw.
diese möchte ich in eine mysql-datenbank importieren
datenbank anlegen (felder,tabellen,usw.) kann ich
am liebsten möchte ich nun von der console ein sql-befehl oder ein kurzes script aufrufen
es sollte nun die datensätze der txt-datei importiert werden
besten dank im voraus
hjn
Ich bin genau so ein Newbie. Kann also wenig zur sache selbst beitragen.
Ich fand zufällig ein Online-Buch zu MySql unter http://www2.little-idiot.de/mysql/
Vielleicht hilft's
Hans
a little bit unix magic:
erst mal weg, mit den Lehrzeichen:
am Zeilenanfang
am Zeilenende
vor den Kommas
hinter den Kommas
cat data.txt | sed -e 's/^ \+//' -e 's/ \+$//' -e 's/ \+,/,/g' -e 's/, \+/,/g' > strip.txt
Jetzt wandeln wir die Zeilen durch Suchen und Ersetzen in SQL-Befehle:
cat strip.txt | sed -e 's/\(.*\),\(.*\),\(.*\),\(.*\)/\insert table values ("\1","\2","\3","\4");/' > insert.txt
Nun muessen wir das ganze nur noch an mysql fuettern (Die Table table sollte schon in der Datenbank database existieren)
mysql database < insert.txt
Ersetze data.txt, table und database durch die richtigen Namen.
[Dieser Beitrag wurde von jgbauman am 27. Januar 2001 editiert.]
besten dank für die schnellen antworten
gruss
hjn
Das kann doch nicht wahr sein: Da liegt eine Textdatei im Format ASCII_CSV vor, und man muss erst mit dem sed rumhantieren im die Daten in eine Datenbank zu bekommen. Gibt es da keine vorgefertigten Komponenten?
Bei dBase (kenne die Versionen bis 5.x) hiess das (bei geöffneter Tabelle) einfach:
append from FileName Type Delimited [with char]
Würde mich wundern, wenn es ähnliches nicht auch für mySQL und Co. gibt.
Hans
wie wärs mit
load data local infile 'foo' into table bar fields terminated by ' , ';
------------------
mfg,
marsellus
ich wolte mit meiner frage keine diskusion eroefnen
ich finde die anweisung von user jgbauman sehr gut
wie ich schon schrieb bin ich neuling im sql-umfeld
wie man den befehl sed anwenden kann war interessant
aber als neuling besonders das ergebnis
es wurden ja sql-befehle erzeugt
es gibt bestimmt auch programme die das alles automatsch erledigen
vieleicht is es altmodisch aber ich moechte immer gern wissen was eigendlich da passiert
zur information ich habe schon viele oracle datenbanken installiert (Novell) und datenbanken angelegt
dabei wurden fertige scripts gestarten und nach einiger zeit war alles fertig
was da im hintergrund passierte ... keiner wuste es
mfg
hjn
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.