Probleem met CSV bestand importen in PHPmyadmin
Voor school moeten we een webshop maken, het gaat allemaal best aardig.
Maar ik loop helaas vast op iets vrij essentiels.
Namelijk:
Een .CSV bestand importen in PHPmyAdmin.
Dit zijn de kolom namen:
ID;Name;Price;Name2;Name3;Value;Description;ImageFilename;Category;SubCategory1;SubCategory2;SubCategory3
Het ID kan geen primary key zijn, want hij komt vaker voor. Paar regels uit de CSV:
1654;Platinum CD-R 700 MB 25 stuks;€ 10,49;type;type;cd-r, single-layer;Platinum CD-R Spindel. Op deze Platinum Cd-rom's kunt u tot 700MB of 80 minuten aan gegevens opslaan.;fcf51a03-517b-451e-a980-6a4a8cdc0757.jpg;HARDWARE;Toebehoren;Media;CD-R
1654;Platinum CD-R 700 MB 25 stuks;€ 10,49;capaciteit;capaciteit;700 mb (80 minuten);Platinum CD-R Spindel. Op deze Platinum Cd-rom's kunt u tot 700MB of 80 minuten aan gegevens opslaan.;fcf51a03-517b-451e-a980-6a4a8cdc0757.jpg;HARDWARE;Toebehoren;Media;CD-R
1654;Platinum CD-R 700 MB 25 stuks;€ 10,49;schrijfsnelheid;schrijfsnelheid;52 x;Platinum CD-R Spindel. Op deze Platinum Cd-rom's kunt u tot 700MB of 80 minuten aan gegevens opslaan.;fcf51a03-517b-451e-a980-6a4a8cdc0757.jpg;HARDWARE;Toebehoren;Media;CD-R
1654;Platinum CD-R 700 MB 25 stuks;€ 10,49;aantal;aantal;25;Platinum CD-R Spindel. Op deze Platinum Cd-rom's kunt u tot 700MB of 80 minuten aan gegevens opslaan.;fcf51a03-517b-451e-a980-6a4a8cdc0757.jpg;HARDWARE;Toebehoren;Media;CD-R
1654;Platinum CD-R 700 MB 25 stuks;€ 10,49;verpakking;verpakking;spindel;Platinum CD-R Spindel. Op deze Platinum Cd-rom's kunt u tot 700MB of 80 minuten aan gegevens opslaan.;fcf51a03-517b-451e-a980-6a4a8cdc0757.jpg;HARDWARE;Toebehoren;Media;CD-R
1836;Platinum CD-R 700 MB 50 stuks;€ 20,79;type;type;cd-r, single-layer;Platinum CD-R Spindel. Op deze Platinum Cd-rom's kunt u tot 700MB of 80 minuten aan gegevens opslaan.;60aa0505-db81-4d4a-85f3-3a3c8a152ed3.jpg;HARDWARE;Toebehoren;Media;CD-R
Erg onoverzichtelijk. Maar u kan zien dat een ID meerdere keren voorkomt. Dit is om meer specificaties over een product te geven.
Wat heb ik al geprobeerd:
- Via PhpmyAdmin via 'import' het CSV bestand te importen. Dit lukt steeds niet. Hij logt gewoon uit als hij klaar is met uploaden. Of ik krijg allerlei vage warnings.
- Gezocht naar een script dat het kan doen voor me, niet gevonden.
Zou iemand mij alstublieft kunnen helpen, want ik kom echt niet verder.
Bij voorbaat dank, Mitchell
Gewijzigd op 08/04/2011 00:32:14 door Mitchell Izelaar
Data laden doe vanaf de SQL prompt met LOAD DATA
En het toverwoord: database normalisatie.
Note: die id's zijn geen id's maar product identificatie nummers.
Gerben Jacobs op 08/04/2011 09:19:31:
Dat is niet de juiste oplossing!!
Data in een database tabel laden doe je:
1. met de beschikbare tools van je database
2. LOAD DATA
Dusdaar komt totaal geen php aan te pas!!
Ik heb het natuurlijk al met de import functie in phpmyadmin geprobeerd.
Maar dat lukte niet. Weet iemand een oplossing?
@Gerben Jacobs, waarom is het een slecht bestand?
Alvast bedankt voor jullie hulp.
Toevoeging op 08/04/2011 11:52:19:
Hallo allemaal,
Daar ben ik weer...
Ik heb table aangemaakt ( deze heet producten1)
En probleem via SQl dit:
SQL-query:
LOAD DATA LOCAL INFILE '/tmp/phpmZYJuR' INTO TABLE `producten1` FIELDS TERMINATED BY ';' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\r\n'
MySQL retourneerde:
#1148 - The used command is not allowed with this MySQL version
Heb het met een .txt en met een .CSV bestand geprobeerd.
Hopelijk kan iemand me verder helpen, want ik heb geen ideeën meer.
Nog een keer geprobeerd:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 129563344 bytes) in /www/a/r/g/argewebhosting.nl/public_html/phpmyadmin/libraries/unzip.lib.php on line 325
Trouwens, het .CSV bestand is 69,5 MB groot...:S
Gewijzigd op 08/04/2011 11:56:43 door Mitchell Izelaar