Daten aus einer Datei in SQL Datenbank

hemorieder

Lieutenant
Registriert
März 2003
Beiträge
652
Hi,

ich habe eine textdatei mit diesem inhalt:

Grundschule Reinickendorf (Am Schäfersee), 13407 Berlin ;; 03. OSZ Informations- und Medizintechnik, 12359 Berlin ;; ........ usw

Also immer der Form:

SCHULENAME, PLZ ORT ;;

Die Datenbank ist so aufgebaut:

ID SCHULNAME PLZ ORT


Wie kriege ich jetzt die daten aus der Datei in der form in die DB ? Per Hand geht nich weil es sehr sehr viele Daten sind. Hat jemand ne idee von euch ?

mfg

hemorieder
 
PHP:
<?php
$file = ""; // Deine Datei, kannst du ja per POST übergeben lassen
$file_content = file_get_contents($file); // Dateiinhalt auslesen
$new_array = explode(";;",$file_content); // erstellt das erste array
$count = count($new_array);
$counter = "0";

while($counter <= $count) {
	$tmp_array = explode(",",$new_array[$counter]); // erstellt das zweite array
	
        $id = mysql_num_rows(mysql_query("SELECT id FROM datenbankname")) + 1; // erstellt die ID der schule
	$schule = $tmp_array[0]; // liest den schulnamen aus
	$plz = substr($tmp_array[1],0,5); // liest die PLZ aus
	$ort = substr($tmp_array[1],6); // liest den Ort aus
        $ort = str_replace("  ","",$ort); // loescht immer 2 leerzeichen aus einem string
	
	$sql_query = mysql_query("INSERT INTO datenbankname (ID, SCHULNAME, PLZ, ORT) VALUES ('$id', '$schule', '$plz', '$ort')"); // Der mysql befehl, connection muss vorher vorhanden sein
}
?>

so sollte es gehen, das meiste ist kommentiert.

du liest packst alles in nen array, welches du dann nacher stück für stück auseinander nimmst, auf wunsch schreibe ich dir auch noch den mySQL befehl ;)
 
Zuletzt bearbeitet: (erweiterung des posts)
Was für eine SQL Datenbank hast du denn? Microsoft SQL Server?

Dann am besten den DTS Job nutzen, damit kannste sowas leicht automatisieren, da dir Assistenten helfen den Job zu erstellen. Diesen kannste Zeitgesteuert oder Ereignisgesteuert starten lassen, um regelmäßig was in eine Datenbank zu importieren.

Bei anderen Datenbank Systemen gibt es ähnliche Mechanismen, die Namen der entsprechenden Funktionen bei Kokurrenzprodukten zum MS SQL Server kenne ich allerdings nicht.

Gruß
 

Ähnliche Themen

D
Antworten
4
Aufrufe
955
Don_2020
D
M
Antworten
49
Aufrufe
5.509
Marvolo
M
M
Antworten
47
Aufrufe
4.867
McMoneysack91
M
Zurück
Oben