Avatar billede flushout Nybegynder
27. maj 2004 - 10:21 Der er 9 kommentarer og
1 løsning

Indsætte data til MySQL fra semikolon separeret csv-fil.

Hejsa

Jeg har en fil, der er formatteret som dette eksempel:

Klaus;275372537;elj@æfjg.dk
Jens;143234234;2323ed@lefjg.dk
Hans;234231233;r4r@ptjg.dk
Søren;43424234;0ptuo@orehjgf.dk
Jeppe;3241334324;3lrjo4p@krwhf.dk

Det jeg gerne vil er, at få åbnet denne fil og lagt den ind i en MySQL database. Det skal ligge i en tabel der hedder uploader og dataen skal gemmes i 3 felter, hhv: navn, kundenr og email.

Jeg har forsøgt med dette, men ude success :(

mysql_query("LOAD DATA INFILE 'tmpfiles/dataFile.csv' INTO TABLE uploader FIELDS TERMINATED BY ';'") or die ("Fejl ved indsættelse i databasen ".mysql_error());

Hvordan gør man?
Avatar billede detox Nybegynder
27. maj 2004 - 10:25 #1
Måske kan du prøve med en fuld sti istedet for: 'tmpfiles/dataFile.csv'.
Ligger filen på serveren?
Avatar billede flushout Nybegynder
27. maj 2004 - 10:28 #2
Ja den ligger i folderen tmpfiles og filen hedder dataFile.csv ... jeg er nu usikker på om den løsning jeg har herover overhovedet vil virke...?
Avatar billede detox Nybegynder
27. maj 2004 - 10:32 #3
Jo, det ser rigtig nok ud, så det burde virke. Men som sagt prøv at give den en fuld sti og du kan jo eksperimentere med en backup, hvis noget skulle gå galt.
Avatar billede detox Nybegynder
27. maj 2004 - 10:40 #4
Indeholder tabellen kun de tre felter?
Avatar billede flushout Nybegynder
27. maj 2004 - 10:41 #5
hmmm... nu får jeg en underlig fejl..

Fejl ved indsættelse i databasen Access denied for user: 'mit brugernavn' (Using password: YES)

Jeg har ikke set denne fejl før.. i min dbconnect.php fil er password ikke sat til yes, men til det rigtige password.. ved du hvad det kan skyldes?
Avatar billede flushout Nybegynder
27. maj 2004 - 10:41 #6
ja. Der er kun de tre felter i tabellen.. :)
Avatar billede detox Nybegynder
27. maj 2004 - 10:47 #7
Hvis du ellers ikke har problemer med at connecte til databasen med den samme dbconnect.php, kan det måske hænge sammen med at du ikke har FILE privilegie på denne bruger.
Avatar billede flushout Nybegynder
27. maj 2004 - 10:48 #8
dbconnect virker fint alle andre steder :(

Kan jeg så evt. åbne filen, lægge den ind i et array og så gemme arrayet i databasen? .. og hvis ja, hvordan?
Avatar billede flushout Nybegynder
27. maj 2004 - 10:52 #9
LOAD DATA LOCAL INFILE 'tmpfiles/dataFile.csv' INTO TABLE `uploader` FIELDS TERMINATED BY ';'

hehe.. jeg prøvede at importere filen direkte i phpMyAdmin.. der kunne jeg godt, den gav mig denne query, som virker :) :) :)

Tak for hjælpen.. smid et svar så får du points..
Avatar billede detox Nybegynder
27. maj 2004 - 10:55 #10
Aha, du skulle have LOCAL med. Det tyder jo på filen ligger hos klienten. Godt det lykkedes :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester