Datenimport aus CSV "tut nix"

MarioR

Neuer Benutzer
Beiträge
3
Hallo,

ich bin gerade dabei mit meiner "Minidatenbank" von MS-SQL-CE nach MySQL umzuziehen.

In MySQL habe ich die Tabellen angelegt und möchte nun die Daten Importieren.
Dazu exportiere ich die Daten in eine CSV datei und möchte sie in die MySQL
über den TableDataImportWizzard importieren.
Bei 2 Tabellen läuft der Wizzard durch und importiert auch alle Datensätze,
bei 2 weiteren Tabellen läuft der Importwizzard zwar ohne Fehlermeldung im Log duch, es werden aber keine Daten importiert.

hier mal das Create SQL einer der Tabellen:
Code:
CREATE TABLE `messung` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`datum` datetime NOT NULL,
`schicht` varchar(1) NOT NULL,
`titel` varchar(100) DEFAULT NULL,
`beschreibung` varchar(100) DEFAULT NULL,
`targetfolder` varchar(20) DEFAULT NULL,
`truppfuehrer` int(11) NOT NULL,
`messer1` int(11) DEFAULT NULL,
`messer2` int(11) DEFAULT NULL,
`messer3` int(11) DEFAULT NULL,
`messer4` int(11) DEFAULT NULL,
`messer5` int(11) DEFAULT NULL,
`messer6` int(11) DEFAULT NULL,
`instrument` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `beschreibung_IDX` (`beschreibung`),
KEY `datum_IDX` (`datum`),
KEY `titel_IDX` (`titel`),
KEY `instrument_FK` (`instrument`),
KEY `messer1_FK` (`messer1`),
KEY `messer2_FK` (`messer2`),
KEY `messer3_FK` (`messer3`),
KEY `messer4_FK` (`messer4`),
KEY `messer5_FK` (`messer5`),
KEY `messer6_FK` (`messer6`),
KEY `truppfuerer_FK` (`truppfuehrer`),
CONSTRAINT `instrument_FK` FOREIGN KEY (`instrument`) REFERENCES `instrument` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `messer1_FK` FOREIGN KEY (`messer1`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `messer2_FK` FOREIGN KEY (`messer2`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `messer3_FK` FOREIGN KEY (`messer3`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `messer4_FK` FOREIGN KEY (`messer4`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `messer5_FK` FOREIGN KEY (`messer5`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `messer6_FK` FOREIGN KEY (`messer6`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `truppfuerer_FK` FOREIGN KEY (`truppfuehrer`) REFERENCES `person` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

und mal die ersten paar Zeilen der CSV

Code:
id,datum,schicht,titel,beschreibung,targetfolder,truppfuehrer,messer1,messer2,messer3,messer4,messer5,messer6,instrument
18,2014-01-23 12:00:00,S,Stunden,,20140123_S_TU,3,10,,,,,,6
19,2012-12-19 12:00:00,F,HZ Anschluss 21-06 Q17,,20121219_F_TU,3,12,15,,,,,6
20,2014-01-22 12:00:00,F,21-06 E-14,,20140122_F_TU,3,15,10,,,,,6
21,2014-01-22 12:00:00,F,21-06 E20-01,,20140122_F_TU_1,3,15,10,,,,,6
22,2014-01-27 12:15:31.520,F,23. FS,ZB195/1,20140127_F_TU,3,14,15,11,,,,6
23,2014-01-27 12:23:53.967,F,21-06 W-04,ZB194/4,20140127_F_TU_1,3,14,15,11,,,,6
24,2014-01-27 12:33:29.513,F,21-06 E10 Q4,ZB188/29,20140127_F_TU_2,3,14,15,11,,,,6
25,2014-01-27 12:49:19.223,F,21-06E13,,20140127_F_TU_3,3,14,15,11,,,,6
26,2014-01-28 12:00:00,F,Stunden 6,,20140128_F_HU,6,16,17,,,,,5
27,2014-01-28 12:00:00,F,Stunden GWB 6,,20140128_F_HU_1,6,16,17,,,,,5

er hat sicherlich irgendwo ein Problem, aber wo und wenn ja warum verrät er es nicht?

Gruß Mario
 
Werbung:
Hallo,

... habs Problem gefunden ...

MySql ersetzt die leeren Felder nicht automatisch durch NULL.

dies wird importiert
Code:
18;2014-01-23 12:00:00,00;S;Stunden;NULL;20140123_S_TU;3;10;NULL;NULL;NULL;NULL;NULL;6
19;2012-12-19 12:00:00,00;F;HZ Anschluss 21-06 Q17;NULL;20121219_F_TU;3;12;15;NULL;NULL;NULL;NULL;6
20;2014-01-22 12:00:00,00;F;21-06 E-14;NULL;20140122_F_TU;3;15;10;NULL;NULL;NULL;NULL;6
21;2014-01-22 12:00:00,00;F;21-06 E20-01;NULL;20140122_F_TU_1;3;15;10;NULL;NULL;NULL;NULL;6
22;2014-01-27 12:15:31,31;F;23. FS;ZB195/1;20140127_F_TU;3;14;15;11;NULL;NULL;NULL;6
23;2014-01-27 12:23:53,53;F;21-06 W-04;ZB194/4;20140127_F_TU_1;3;14;15;11;NULL;NULL;NULL;6

Import per Query in der Workbench

Code:
SET foreign_key_checks = 0;
LOAD DATA LOCAL INFILE 'D:\messung_NULL.csv'
INTO TABLE measureorganizer.messung
FIELDS OPTIONALLY ENCLOSED BY '"' TERMINATED BY ';'
LINES TERMINATED BY '\n'
(id,datum,schicht,titel,beschreibung,targetfolder,truppfuehrer,messer1,messer2,messer3,messer4,messer5,messer6,instrument);
SET foreign_key_checks = 1;
 
Werbung:
... kleine Ergänzung

bei Texte, welche Windows-Pfadangaben einthalten muss "\" durch "\\" ersetzt werden.

Beispiel:
in der CSV "C:\Users\XXXXX\AppData\Local\" => in der Table "C:UsersXXXXXAppDataLocal"
in der CSV "C:\\Users\\XXXXX\\AppData\\Local\\" => in der Table "C:\Users\XXXXX\AppData\Local\"

... wird wohl mit c oder c++ programiert sein ;-)
 
Zurück
Oben