SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 23.03.2004, 18:44:53
pixelterror pixelterror ist offline
Anfänger
 
Registriert seit: Mar 2004
Beiträge: 24
Daten aus TXT File in MySQL DB importieren...

Hi,

wie kann ich am einfachsten die Daten einer TXT File in eine MySQL DB importieren?

Die Daten stehen so in der TXT FIle:

01067 Dresden-01067 11190 6166 0,136 1016 92 106 39
01069 Dresden-01069 23556 13123 0,286 1566 90 79 33
01097 Dresden-01097 10454 5332 0,127 736 52 48 15
01099 DD-Neustadt 21314 10932 0,259 1392 101 65 30
01108 DD-Weixdorf 6001 2316 0,073 217 18 13 2
01109 DD-Klotzsche 19413 8716 0,236 793 54 52 19

Also immer durch einen TAB getrennt.

Wie kann ich es am einfachsten machen, das jeder Wert in eine eingene DB Spalte importiert wird.

In dieser Reihenfolge:
PLZ | Ort | Einwohner | Haushalte | Bevölkerung in % | Firmen 1 - 10 Mitarbeiter | Firmen 11 - 20 Mitarbeiter | Firmen 21 - 50 Mitarbeiter | Firmen 51 - 100 Mitarbeiter

Jemand eine Idee?

Es handelt sich um ca. 8200 Zeilen in diesem Format in der TXT File.
Mit Zitat antworten
  #2  
Alt 23.03.2004, 19:30:10
Benutzerbild von Jürg
Jürg Jürg ist offline
Junior Member
 
Registriert seit: May 2003
Ort: CH Zürich
Alter: 66
Beiträge: 352
Jürg eine Nachricht über Skype™ schicken
Als erstes würde ich die txt-Datei in EXCEL importieren und da in eine cvs-Datei wandeln, um Leerschläge durch ";" zu ersetzen.
Danach die Tabelle mit phpMyAdmin von Hand anlegen und die erste Zeile eingeben und speichern.
Nun diese Tabelle mit "Exportieren" als csv-Datei in einen Editor einfügen. Hier nun die Daten aus dem Ecxel einfügen. Die weiteren Zeilen der Tabelle müssen gleich aussehen wie die erste Zeile.
Nun die Tabelle in MySQL löschen.
Mit phpMyAdmin mit "SQL" die neue Tabelle inklusive Hader einfügen, (in das grosse Feld stellen).
Fertig. Nicht sehr elegant aber einfach!
__________________
www.zudila.ch
Mit Zitat antworten
  #3  
Alt 23.03.2004, 19:33:00
pixelterror pixelterror ist offline
Anfänger
 
Registriert seit: Mar 2004
Beiträge: 24
Hi,

ob elegant oder nicht ist egal.
Hauptsache Daten sind in der Db.

Versuch das gleich mal.

-Sven-
Mit Zitat antworten
  #4  
Alt 23.03.2004, 19:42:21
Benutzerbild von Jürg
Jürg Jürg ist offline
Junior Member
 
Registriert seit: May 2003
Ort: CH Zürich
Alter: 66
Beiträge: 352
Jürg eine Nachricht über Skype™ schicken
Ganz Egal ist es nicht! Der schönere Weg ginge direkter, nur da müsste ich mehr schreiben.
__________________
www.zudila.ch
Mit Zitat antworten
  #5  
Alt 23.03.2004, 19:51:56
pixelterror pixelterror ist offline
Anfänger
 
Registriert seit: Mar 2004
Beiträge: 24
Also,

interessieren würde der mich auch. ;)
Mit Zitat antworten
  #6  
Alt 23.03.2004, 19:57:28
pixelterror pixelterror ist offline
Anfänger
 
Registriert seit: Mar 2004
Beiträge: 24
Zitat:
Original geschrieben von Jürg
Als erstes würde ich die txt-Datei in EXCEL importieren und da in eine cvs-Datei wandeln, um Leerschläge durch ";" zu ersetzen.
Danach die Tabelle mit phpMyAdmin von Hand anlegen und die erste Zeile eingeben und speichern.
Nun diese Tabelle mit "Exportieren" als csv-Datei in einen Editor einfügen. Hier nun die Daten aus dem Ecxel einfügen. Die weiteren Zeilen der Tabelle müssen gleich aussehen wie die erste Zeile.
Nun die Tabelle in MySQL löschen.
Mit phpMyAdmin mit "SQL" die neue Tabelle inklusive Hader einfügen, (in das grosse Feld stellen).
Fertig. Nicht sehr elegant aber einfach!
Okay,

also eine cvs Datei hab ich erstellt mit ; als Trennzeichen.
Das war auch kein Ding.

Und sieht auch alles genauso aus, als wenn ich es mit phpmyadmin exportiere.

Ok Tabelle Löschen auch kein Ding.

Nur wie füge ich die cvs Datensätze mit HEADER (was auch immer das sein soll) wieder ein?

Wenn ich im SQL Bereich das eingebe wird das so wohl nicht gehen.

Kannst Du den Schritt etwas genauer erklären?
Mit Zitat antworten
  #7  
Alt 23.03.2004, 20:24:47
Benutzerbild von Jürg
Jürg Jürg ist offline
Junior Member
 
Registriert seit: May 2003
Ort: CH Zürich
Alter: 66
Beiträge: 352
Jürg eine Nachricht über Skype™ schicken
Uff, sorry er braucht "," und nicht ";"!!!
Das Ganze müsste etwa so aussehen:

CREATE TABLE auftrag (
id_auf int(11) DEFAULT '0' NOT NULL auto_increment,
id_kunde int(11) DEFAULT '0' NOT NULL,
id_model int(11) DEFAULT '0' NOT NULL,
arbeit text,
wo varchar(40),
wannvon datetime,
wannbis datetime,
datum timestamp(14),
PRIMARY KEY (id_auf)
);

INSERT INTO mod_auftrag VALUES (1, 1, 2, 'Bademodekatalog für 20004', 'Fotostudio Tester', '2004-03-15 09:00:00', '2004-03-15 22:00:00', 20040305215535);
INSERT INTO mod_auftrag VALUES (2, 1, 2, 'testarbeit', 'testort', '2004-03-20 18:00:00', '2004-03-20 21:00:00', 20040308225559);
INSERT INTO mod_auftrag VALUES (3, 1, 2, 'testarbeit', 'testort', '2004-03-20 18:00:00', '2004-03-20 21:00:00', 20040308225611);

Versuche das einmal in Deine DB einzufügen, wichtig das Feld im "SQL" muss leer sein.
__________________
www.zudila.ch

Geändert von Jürg (23.03.2004 um 20:28:01 Uhr)
Mit Zitat antworten
  #8  
Alt 23.03.2004, 20:47:22
pixelterror pixelterror ist offline
Anfänger
 
Registriert seit: Mar 2004
Beiträge: 24
Ja das funzt.

Brauch ich gar nicht testen.

Aber wie kriege ich da jetzt 8200 Datensätze rein?
Ich mein jedes mal INSERT INTO ....
schreiben????

ARGH!!!

Kann man das nicht automatisieren?
Mit Zitat antworten
  #9  
Alt 23.03.2004, 21:02:51
pixelterror pixelterror ist offline
Anfänger
 
Registriert seit: Mar 2004
Beiträge: 24
Hi,

also meine Datei sieht jetzt so aus:

01067,Dresden-01067,11190,6166,0.136,1016,92,106,39

Und davon halt 8200 Zeilen.

Wie kriege ich das jetzt in meine DB?
Vielleicht mit einem Array?
Aber wie???

-Sven-
Mit Zitat antworten
  #10  
Alt 23.03.2004, 21:16:54
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
kennst du die funktionen file() und explode() ?

damit müsste das hinhauen
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:01:56 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt