Pagina 1 van 1

verbinden met database (ODBC) lukt niet

Geplaatst: wo mar 31, 2010 9:53 am
door malouis
Hallo
Als ik in Base kies voor -Met een bestaande database verbinden -ODBC, dan krijg ik als ik op de knop bladeren klik een foutmelding:
Programmabibliotheek libodbc.so.1 kan niet worden geladen of is defect. De functie ODBC gegevensbronnen kiezen is niet beschikbaar.
De bedoeling was met een Access database te verbinden, vandaar de keuze voor ODBC.
Nou las ik ook ergens dat dat helemaal niet werkt onder Linux.
(Ik draai OOo3.1.1 onder Ubuntu 9.10.)
Heeft iemand enig idee waar het mis gaat en wat er aan te doen?
Louis

Re: verbinden met database (ODBC) lukt niet

Geplaatst: wo mar 31, 2010 10:31 am
door eremmel
ODBC / MS Access is pure Windows. Enige werkbare optie is via een windows omgeving tabellen kopiƫren naar andere database die wel beschikbaar is op linux.

Re: verbinden met database (ODBC) lukt niet

Geplaatst: wo mar 31, 2010 11:29 am
door RPG
Hallo

Ik had er al eerder een reactie onder geplaats die bijna gelijk was aan die van eremmel. Wij postten bijna gelijktijdig. Het lezen van zijn post bracht het volgende in mijn heriinering.

Je kunt met de mdbtools de tabellen omzetten naar leesbare bestanden onder linux het worden dan comma separated value files (CSV).
Ik denk dat de mdbtools niet standaard op je systeem staan maar dat je dat moet installeren. Hoe dat te doen met Ubuntu weet ik niet maar dat is misschien te vragen op een Ubuntu forum.

Ik heb een script gemaakt onder linux wat alle databestanden uitpakt van alle mdb files in een map. Als het goed is worden ze in afzonderlijk submappen geplaatst.
Nadat je de databestanden hebt uitgepakt kun je ze op verschillende manieren inlezen. Wat de beste manier is, is afhankelijk van veel zaken. De mogelijkheden zijn
a) als een calc file in een spreadsheet.
b) als een text file in the hsqldb file en dan langzaam omwerken naar een echte tabel.

Beide hebben hun eigen voordelen en nadelen.
Ik heb het idee gekregen dat het omwerken van een mdb database naar OpenOffice.org nog al wat problemen oplevert overigens afhankelijk van het oorspronkelijke ontwerp en het gewenste ontwerp.

En als afsluiting wees zeker dat je kopieen hebt.
Ik heb dit kunnen oefenen daar iemand zo vriendelijk is geweest mij een comlete mdb database op te sturen. Dat gaf mij de gelegenheid om dit te leren.

Romke

Hier onder staat het script.

Code: Selecteer alles

#!/bin/bash
# Dit script werkt alleen onder linux
# Het is de bedoeling dat dit script alle tabellen exporteerd.
# De opties die gegeven zorgen voor:
# a) Dat alleen gegevens bestanden worden ge-exporteerd.
# b) Dat datums in Amerikaanse stijl worden ge-exporteerd.
# c) Getallen komen met een punt als decimal separator.
#
# Het script zorgt er voor dat alle databases meegenomen worden.
# Voor elke database wordt een aparte map gemaakt en de bijbehorende bestanden worden daar ingeplaatst
# 
# Voor een kleine database kan alles achteraf het gecorrigeerd worden met de hand
# Voor een grote database lijkt mij het beter om gelijk alles goed te krijgen.
# Ik denk dat exporteren naar een csv direct vanuit Access de voorkeur verdient.
for database in $(ls -1 *.mdb )
	do
		DirNaam="${database%*.mdb}" # Hier wordt de suffix weggehaald "Naamdatabase.mdb" wordt "Naamdatabase"
		test -d "${DirNaam}" || mkdir "${DirNaam}"
	
		for tabel in $(mdb-tables -1 "${database}")
			do
			echo "Ik werk aan deze : $database  $tabel"
# Er is een amerikaanse regel en een Nederlandse regel
#		 	mdb-export -D "%m-%d-%y" "${database}" "$tabel" >"${DirNaam}/${tabel}.csv"
#		 	mdb-export -D "%d-%m-%y" "${database}" "$tabel" >"${DirNaam}/${tabel}.csv"
		 	mdb-export -D "%Y-%m-%d" "${database}" "$tabel" >"${DirNaam}/${tabel}.csv"
			done
	done

Re: verbinden met database (ODBC) lukt niet

Geplaatst: wo mar 31, 2010 12:05 pm
door floris v
Er bestaan wel ODBC-drivers voor MySQL op Linux, en misschien dat je dan via MySQL wel verbinding kunt maken met de Access-tabellen.