[sql] csv importeren in (my)sql

Pagina: 1
Acties:

  • CyberArt
  • Registratie: Mei 2004
  • Laatst online: 10-08-2011
ik wil dit dus graag.
normaal importeer ik wel eens een .sql bestand via cmd "mysql < bla.sql" in mysql maar met een csv bestand gaat dat een beetje lastig. de headers geven weinig info, oa over welke db enzo.

nu is dus mijn vraag hoe dit wel goed moet. ik kan er eventueel headers bijzetten maar ik vraag me dan af welke.. en misschien zijn er leuke programma's die dat kunnen omzetten (csv naar sql).

ik heb al redelijk gegoogled en gezocht hier, wel redelijk wat gevonden, alleen niet echt relevante informatie. vooral ja dat probleem heb ik ook, of juist dat gedeelte weet ik al, alleen dit en dat..
dus nog geen oplossing, iemand die er meer over weet?

hopende hiermee een post te hebben gemaakt, teken ik


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Zoek even op LOAD DATA INFILE.

All my posts are provided as-is. They come with NO WARRANTY at all.


Verwijderd

Ik zou zo geen programma's hiervoor weten ( maar ik ben ook geen mysql expert ).
Wat ik echter in dit soort gevallen wel eens doe is de CSV in Excel importeren, en dan door middel van een formule er Insert Statements van maken. Dat resultaat kun je dan gebruiken om de data in MySQl te zetten.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 19-05 21:24

NMe

Quia Ego Sic Dico.

phpMyAdmin kan comma seperated files importeren. Woeps, het kan alleen exporteren. :P

[ Voor 34% gewijzigd door NMe op 17-10-2004 00:04 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Mensen, MySQL kan dit zelf :) Te vinden in de manual. Hoeft niet eens comma-separated te zijn, het separation character kun je zelf aangeven.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • CyberArt
  • Registratie: Mei 2004
  • Laatst online: 10-08-2011
dat is helemaal mooi!
ik heb phpmyadmin wel draaien, kan iemand mij helpen met de sql code daarvoor nodig?

hopende hiermee een post te hebben gemaakt, teken ik


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:50

gorgi_19

Kruimeltjes zijn weer op :9

CyberArt schreef op 16 oktober 2004 @ 23:24:
dat is helemaal mooi!
ik heb phpmyadmin wel draaien, kan iemand mij helpen met de sql code daarvoor nodig?
Wat heb je zelf tot nu toe gemaakt? :) Wat lukt je niet en welke foutmeldingen kom je tegen? :)

Rechtstreeks vragen om kant en klare code staan we namelijk toe toe in Programming & Webscripting; in dat geval gaat het topic dicht :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • CyberArt
  • Registratie: Mei 2004
  • Laatst online: 10-08-2011
ja sorry, het was inderdaad wat simpel het zo te vragen..

nuja, op advies hier dus gezocht op dat LOAD DATA INFILE bij de mysql manual, daar staat een flinke pagina, ik denk toch wel rond de 20 a4'tjes..
alleen bij de standaasrd code staat meestal dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [FIELDS
        [TERMINATED BY '\t']
        [[OPTIONALLY] ENCLOSED BY '']
        [ESCAPED BY '\\' ]
    ]
    [LINES 
        [STARTING BY '']    
        [TERMINATED BY '\n']
    ]
    [IGNORE number LINES]
    [(col_name,...)]

het meest vervelende hiervan vind ik de 'into table'. ik heb nml liever dat ie dat zelf aanmaakt... misschien is het toch crusiaal dat ik dat zelf doe? dan zal ik dat proberen...

daarnaast neem ik aan dat deze code verder zou kunnen werken?

(lijst.csv staat in \mysql\bin\)
code:
1
2
3
4
5
6
7
8
LOAD DATA LOCAL INFILE 'lijst.csv'
    REPLACE
    INTO TABLE lijst
    FIELDS
        TERMINATED BY '\t'
    LINES 
        TERMINATED BY '\n'
    [(col_name,...)]

en da laatsate stukje begrijp ik ook nog niet helemaal...

ik geef, ik ben niet bepaald een held met sql, maar kan het normale werk redelijk... iemand die me op weg kan helpen?

hopende hiermee een post te hebben gemaakt, teken ik


  • Postman
  • Registratie: Februari 2000
  • Laatst online: 01-05 13:23
FIELD Terminated by betekend de seperator voor de velden(kolommen) (een tab teken in dit geval)
LINES etc. betekend de seperator voor de rijen (een newline teken in dit geval)

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

CyberArt schreef op 16 oktober 2004 @ 23:45:

het meest vervelende hiervan vind ik de 'into table'. ik heb nml liever dat ie dat zelf aanmaakt... misschien is het toch crusiaal dat ik dat zelf doe? dan zal ik dat proberen...
Dat moet eigenlijk. CSV-bestanden bevatten in principe alleen data. Het eerste-rij-is-kolomnaam-gebeuren dat Microsoft hanteert is eigenlijk een vieze hack. Er is geen manier, behalve user input, om te weten of de eerste rij data is of een specificatie van kolomnamen. En zelfs dan, moet je er ints van maken? varchars? etc.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • Postman
  • Registratie: Februari 2000
  • Laatst online: 01-05 13:23
CyBeR schreef op 17 oktober 2004 @ 01:07:
[...]


Dat moet eigenlijk. CSV-bestanden bevatten in principe alleen data. Het eerste-rij-is-kolomnaam-gebeuren dat Microsoft hanteert is eigenlijk een vieze hack. Er is geen manier, behalve user input, om te weten of de eerste rij data is of een specificatie van kolomnamen. En zelfs dan, moet je er ints van maken? varchars? etc.
Speciale tags gebruiken zoals bijvoorbeeld de regel starten met # ofzo. Maar dan moet wel iedereen dit gaan doen, en een echte standaard voor csv bestanden is er niet bepaald, dus...

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Postman schreef op 17 oktober 2004 @ 01:11:
[...]

Speciale tags gebruiken zoals bijvoorbeeld de regel starten met # ofzo. Maar dan moet wel iedereen dit gaan doen, en een echte standaard voor csv bestanden is er niet bepaald, dus...
Juist. Het kan wel, maar er geen standaard en dus kun je 't beter niet doen als je files buiten je eigen programma komen.

All my posts are provided as-is. They come with NO WARRANTY at all.

Pagina: 1