webForumDet fria alternativet

Importering från txtfil = knas

Databaser & SQL

3 svar · 233 visningar · startad av Famine

Medlem sedan jan. 200265 inlägg
Frågan#1

Hallå, försöker mig på att importera in innehållet från en textfil till mysql. Använde mig utav MySQL-Front när jag gör det. Det är tänkt att jag ska kunna ha en lista på alla mina skivor som jag letar efter på nätet, det är en del och jag orkar inte sitta och skriva in allt manuellt.

Fälten som ska fyllas med data är följande:

id, artist, skivnamn och ar(för utgivnigsår)

Textfilen som den hämtar in datan från ser ut på följande sätt, lägger in en textrad som exempel:

DR. ZEKE\tUdda pälsar 7"\t1979\t\n

\t för att dela in fälten och \n för att visa vad raden tar slut.

När jag importerar in så gör det av följande kommando:

LOAD DATA LOCAL INFILE 'D:/Documents and Settings/Administrator/Desktop/punklistan.txt' INTO TABLE punk.skivor FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' (skivnamn,artist,ar)

När man sedan tittar vad som har kommit in i databasen märker man att det är helt galet, allt hamnar i samma fält. Dock så är det uttabbat i fältet, men den lägger in inte resterande uppgifter i dom andra fälten, enbart "skivnamn" får data i sig.

Hur kan detta komma sig? Jag tycker det borde funka?

Mvh fami

Medlem sedan juni 20014 290 inlägg
#2

Misstänker att det är " tecknet som stäler till problem.

Normalt skall man kunna ha textfilen så här;

aaa\t"bbb\tcccc"\tddd då hamnar aaa i första fältet, bbb\tccc (där \t är expanderat) i andra och ddd i tredje.

Prova att skriva \" eller " i textfilen.

Medlem sedan jan. 200265 inlägg
#3

Testade lite som du sa, men får det inte att funka. Blir samma fel igen. Testade även utan " i strängen, t ex:
aaa\tbbb\t1980\n

När man sedan kollar i Mysql-front så ser det ut på det här skumma viset:
http://members.chello.se/famine/import.jpg

När man sedan klickar i fältet så ser det ut så här(!?!?):
http://members.chello.se/famine/import2.jpg

Hmm :)

Medlem sedan jan. 200265 inlägg
#4

Gjorde om formateringen i textfilen till enbart rena tabbar och dubbeltabbar efter sista fältet för att få en radbrytning. Då funkade det perfekt.

OT: ...och så här fint blev det ;)

http://fami.asna.nu/skivor.php

259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)