Excel/Access naar mysql

Pagina: 1
Acties:
  • 126 views sinds 30-01-2008
  • Reageer

  • glrfndl
  • Registratie: Juni 1999
  • Niet online
Hoe kan ik gegevens die in een excel spreadsheet of een access database zijn opgeslagen invoeren in een mysql database? Met de hand overtikken is een beetje teveel werk Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/wink.gif

Prepare for unforeseen consequences


  • Tuinhark
  • Registratie: April 2000
  • Laatst online: 02-05 21:54

Tuinhark

Retro

Het schijnt met ODBC te kunnen, maar dat is ook slechts iets dat ik links en rechts heb opgevangen. Sorry.

  • jurri@n
  • Registratie: Maart 2000
  • Laatst online: 05-05 15:04
PHP kan toch ook Access-db's openen? Gewoon een scriptje schrijven dat leest uit de Access-db en schrijft in je MySQL-db Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif

  • Knakker
  • Registratie: April 2000
  • Laatst online: 03-05 11:06
Ha Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif MrX heeft me dit een paar dagen allemaal uitgelegd Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif

Als MySQL in je ODBC gegevensbronnen voorkomt (ik had hem als user-DSN), moet je in Access dit doen:

Bestand -> Externe Gegevens Ophalen -> Tabellen Koppelen -> Selecteer type ODBC -> Selecteer je MySQL DSN -> Selecteer tabellen -> en klaar!

De database naam waarin de tabellen komen wordt de naam van je MySQL DSN.

Je kan, als je op Win32 draait, ook via ODBC en je "Microsoft Access Driver (*.mdb)" direct MS Access databases openen. Probleem is alleen dat je hiervoor een system-DSN aan moet maken in je ODBC gegevensbronnen, en als je geen toegang tot de server hebt wordt het moeilijk om dat een system administrator uit te leggen Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif

Maak een system-DSN aan, en noem hem bijvoorbeeld "winkel". Nu selecteer je de "Microsoft Access Driver (*.mdb)" en selecteert je Access database. Dan is dit genoeg

<html><body>
<?php
$conn = odbc_connect("winkel", "", "" );
$query = "SELECT * FROM Producten";
$result = odbc_Exec($conn, $query);

while (odbc_fetch_row($result))
{
printf("%s %s - %s<br>\n", odbc_result($result, "Fabrikant"), odbc_result($result, "Type"), odbc_result($result, "Prijs"));
}

odbc_Close($conn);
?>
</body></html>

Dit geeft dus bijvoorbeeld ALLE records weer in database "winkel", tabel "Producten" in de kolommen "Fabrikant", "Type" en "Prijs".

That's all Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif

Geef mij maar een Warsteiner.


  • Knakker
  • Registratie: April 2000
  • Laatst online: 03-05 11:06
Oh ja nog 2 dingen:
- Als je dat laatste via ODBC gaat doen, waarom dan niet via ASP (je draait toch Win32 Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif), veel makkelijker Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif
- Als iemand mij uit kan leggen hoe ik vanuit PHP een DSN-less connection aanmaakt, dus direct via de MS Access Driver dan zou ik helemaal blij zijn Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif

Geef mij maar een Warsteiner.


  • glrfndl
  • Registratie: Juni 1999
  • Niet online
Nou, het zit zo: mijn vader heeft een database in access, dus onder w98. Maar ik wil die database converteren naar mysql zodat ik er op de linux server mee kan werken. Op die w98 bak draait ook geen sql server of iets dergelijks.

Prepare for unforeseen consequences


  • Knakker
  • Registratie: April 2000
  • Laatst online: 03-05 11:06
Tja, dan weet ik het ook niet Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif

Je zult moeten zoeken naar een MS Access module voor een Apache server, een DSN aanmaken daarmee (bestaat DSN onder Linux? Vast wel Afbeeldingslocatie: http://tweakers.net/g/forum/g/smilies/smile.gif) en dan kan je via ODBC die database aanspreken.

Converteren naar een MySQL is trouwens bijzonder verrot, want wanneer je iets wijzigt in de database moet je het weer overnieuw converteren.

Geef mij maar een Warsteiner.


  • glrfndl
  • Registratie: Juni 1999
  • Niet online
Ok, maar waar staat DSN voor?

Prepare for unforeseen consequences


Verwijderd

Als je maar eenmalig die database om hoeft te zetten naar MySQL dan kun je ook wel de tabellen bewaren als (bijvoorbeeld) .csv en die dan weer inlezen in mysql. Andere mogelijkheid: gebruik een module die een access bestand om kan zetten naar een hele serie sql-commando's. Succes.
Pagina: 1