Weiter Zurück [Inhalt] Online Suche im Handbuch

6.11 Einlesen von Datensätzen über das Netzwerk

Nun haben wir bisher nur die Möglichkeit kennengelernt, eine Datei einzuladen, die bereits auf dem Server abgelegt ist. Eine Datei, z.B. aus EXCEL, ACCESS oder DBASE als ASCII exportiert, könnte man zuerst auf den Server kopieren, und dann mit dem Statement LOAD DATA INFILE ... INTO TABLE ... importieren. Es gibt jedoch viel elegantere Methoden ....:

Update mit LOAD DATA LOCAL...

In MySQL 3.23 gibt es jedoch die Möglichkeit, mit dem original MySQL Client von Ihrer Arbeitsstation aus eine Datei über das Netzwerk, das kann auch ISDN sein, in die Datenbank einzulesen. Benutzen Sie hierzu den Client aus von unserem Server http://www.rent-a-database.de/mysql/client/:

mysql> load data local infile "c:\datenexport.txt" into table testtabelle;
Query OK, 3 rows affected (0.00 sec)
Records: 3  Deleted: 0  Skipped: 0  Warnings: 0

mysql> select * from testtabelle;
+---------+------------------------------------+
| spalte1 | spalte2                            |
+---------+------------------------------------+
|       5 | test                               |
|       5 | testwert                           |
|   34567 | kannix und istnix weissnix habenix |
|       5 | test                               |
|       5 | testwert                           |
|   34567 | kannix und istnix weissnix habenix |
+---------+------------------------------------+
6 rows in set (0.00 sec)

mysql> 
Fein, hat also funktioniert. Damit Sie die Daten auch ersetzen, während Sie die Daten updaten, sollten in der Tabelle eine Spalte im einem UNIQUE KEY enthalten sein. Sie können dann mit folgendem Statement Ihr Update durchführen, während Ihre Datenbank weiterhin abgefragt wird. Hier nun obiges Statement mit der Option replace. Versetzen Sie hierzu Ihre Datenbank zuvor wieder in den Ausgangszustand:
mysql> load data local infile "c:\datenexport.txt" replace into table testtabelle;
Query OK, 3 rows affected (0.00 sec)
Records: 3  Deleted: 0  Skipped: 0  Warnings: 0

mysql> select * from testtabelle;
+---------+------------------------------------+
| spalte1 | spalte2                            |
+---------+------------------------------------+
|       5 | test                               |
|       5 | testwert                           |
|   34567 | kannix und istnix weissnix habenix |
+---------+------------------------------------+
3 rows in set (0.00 sec)

mysql> 
Es hat offensichtlich funktioniert !


Weiter Zurück [Inhalt] Online Suche im Handbuch