Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I'm running Ubuntu 5.10 and am trying to switch my operations entirely to Linux.
I'm trying to find software which can import my Microsoft Access .mdb files.
I have both OpenOffice Base and Kexi installed. Base cannot import .mdb's under Linux. Kexi claims it can with its keximdb plugin. I've tried numerous times, but get to the "Finish" stage and receive an error notice "Import failed". A file has been created, but contains almost nothing.
I installed knoda from Synaptic. It didn't allow import at all (item dimmed). It only allows me to connect to a server and fails to do that as well. I uninstalled it. Their site says it needs some library, which is not available from Ubuntu repositories...if anywhere. I'm really not interested in fooling around with their tar ball only to find nothing works.
I have mdbtools installed, as well as the keximdb plugin.
Obviously, I can start from scratch, creating a data base in Base or Kexi, make tables, queries and forms, and then laboriously re-entering all the data. This is a pretty big deterrent to working on Linux.
The data base itself is pretty normal, except that I made some custom forms with custom navigation buttons.
Is there any way I can conduct business on Linux or am I forced to boot back into Windows for data base work?
If anyone knows how to get anything working, I'd appreciated hearing from you.
As mentioned, mdbtools is installed. I don't know if anything is missing.
Mysql has so many packages in synaptic that I have no idea what I should install. Some of these seem to conflict with each other... different versions or something.
There are also lots of sql packages and postgresql...all with numerous packages. It seems no one has ever put all this together so something will just work. You have to know what you need in advance, which would seem impossible, if you've never used any of them.
Here's a guide to setting up mysql on debian (which Ubuntu is based off of). That should get your server up and running. Any commands that require root of course will require you to use "sudo" instead.
I have gone thru the exercise of exporting all tables in a reletively simple Access DB to text files, using dos2linux to convert them, building a similar DB structure in Postgresql, and populating the tables from the delimited text files, then using Rekall as my front end. I lost the database when I screwed up Fedora and had to reinstall. (I was a pretty unsophisticated Linux user at that time.)
It's not all that tough, but Rekall is not nearly as slick as Access. You'll want to set up some of the queries in Postgresql or MySQL proper. OTOH The end product will look much like an Access application to the end user, whose only responsibility is data entry and running prepared reports.
A little addendum upon further thought: You need to understand that there is a fairly serious learning curve here. I recommend Postgresql as the underlying database because the SQL is very similar to Oracle. If you're working in a serious DB environment, you need to deal with Oracle. I don't know if you ever noticed but Access SQL & Oracle SQL are practically interchangeable. By going thru the exercise I described, you will learn REAL Database Management Administration while providing end users with a product that has the look and feel of MS Access.
Can we back up a second? I've been using Linux for a while, but each new area is a brand new learning curve. That's true under Windows also, but one can generally figure things out...I've rarely, if ever, googled for a how-to to get something to work under Windows.
Things are a bit different with Linux. Even software home pages often leave one wondering what in the world the program does. Everything seems to have been written by techies...each in his own field, so that there is an underlying assumption that people will know what they're talking about.
Techies should not write web pages...they should get a layman to do it for them. By the time they succeeded in explaining the thing to him, he would write something clear. That's why, in the internet world...and especially in maufacturing, there's a whole profession called technical writing...to put the manufacturer's instructions into a form that means something to someone besides him. (This is not an attack on techies. They give us all this stuff. But somebody else needs to do the explaining.)
Example: I've been looking for a POP3 prefetch program which would let me view messages on the server and delete them without downloading. I came across fetchmail. After reading everything they have to say, I still don't know why I would want it. I can "fetch" my mail in Thunderbird! Must be for people using complicated systems like sendmail with no interface? I really don't know.
I was having terrible trouble getting connected to the internet. Everyone on the forums was talking way over my head and nobody could even tell me if there was a command to connect. I spent days on that. Once I got connected, I explained it to a newbie and he was online in minutes.
All the data base software for Linux seems to ask for more and more things to be installed. It sounds like I'm trying to set up an international banking site or something. I'm sure most of these things are serious overkill for my needs. OK, a few dependencies, but wow!
So, if someone can explain this stuff a little, it would be a great help.
For starters, why do I want a server for a data base? I'm not trying to network with it or put it on a web site. I use Access in my daily work...on the desktop. I only upload the .mdb file to a web server...as is...for backup purposes. That's what I want to do on Linux.
In any case, I need some sort of GUI data base program. Command line stuff is great for running your system...better than GUI's. But you can't work when you have to type fourteen lines in a terminal instead of clicking twice and getting on to the next task.
Anyway...end of rant.
If someone could help me get something like Access working...preferably without having to re-create my entire data base...that's what I need.
Well, I'm pretty newbie myself. And I kinda try to play the role of translating what I understand. Sorry I'm pointing you at stuff without translating it, but as I've said, I've never done much database stuff.
My new recommendation is similar to richk: Can you export your access database as something OpenOffice Base can handle?
Also, one more thing you can try assuming you have a windows machine, is to use the latest OpenOffice for Windows and dink around trying to convert the database from within windows to the OO.org format. Then see if you can transport that file to linux.
The problem with Microsoft stuff is that they won't share how files are created. Support for doc, xls, ppt etc is only as good as it is because many linux programmers have figured out how to mangle the data into a usable format. Some data outputs are easier to crack than others or are standardized. I think Access is one of those the linux people built from the ground up.
If someone could help me get something like Access working...preferably without having to re-create my entire data base...that's what I need.
I think the answer is that noone can help you do that. I don't know what mdbtools is exactly, but I assume that they will only help you convert Access tables to another 'prepared' database.
Can I replace MSAccess is one of the most common questions asked here, and as near as I've been able to tell, the answer is, 'No.' I spent my last 10 or so working years as the administrator and developer of an application that used Access as the front end for an Oracle database, and I think Access is a very fine program, indeed. The OPenOffice 'BASE', and KDE's Kbase, or whatever it's called have the long term goal of equalling Access, but I don't think it will happen for a long time.
OTOH, While Access is a very slick and efficient GUI, the real DBMS it provides is not very good, or stable. I say maintaining a real database with a GUI interface is a much more attainable, and valuable goal. Learn it now, and you're in on the ground floor as far as Linux is concerned.
rickh's reply seems to have been posted while I was typing mine.
Thank you for the reply. It helps to clarify the issue.
I needed a data base for my work. I didn't know anything about Access, so I read up a little in the help files and, basically, designed the tables, a couple of basic queries and the forms I would need.
Then I called in a professional to go over it and make it work better...more advanced queries, etc. He did a few things. Then, I checked out his work in design view, figured out how he had done things, asked a few questions and finished the db myself. That's pretty much how I work. From that point on, I'm the end user...which is what I wanted to be in the first place. I never intended to become a data base designer or administrator.
I need the end result and find it very disappointing that, for example, kexi's import feature doesn't just work. I probably will need to deal with some sort of learning curve, but don't have the time to go into it too much more than I had to on Windows.
So that's what I need here. Based on my experience with Access, I have no doubt that I can work with a Linux program. I just need to get my data base into one...converted to their format is fine. I'm not networking...this is for my use.
I'm sure, I could build my db from scratch in oo or kexi or whatever (provided they work...my first oo base installation didn't). It might be easier and faster than trying to delve into data base administration. Still, the best thing would be to just import to some program.
I'm trying to keep it simple. I've learned (and forgotten) enough technical professions just getting things to work.
Okay, one last comment because I'm clearly in over my head. Sorry I couldn't be more help. To answer your question above as to why you might want to install a mysql database server (as opposed to OO Base), the answer may be "it might be your only chance to import your access database"...
Hope you get what you want accomplished! Sorry I really couldn't be more help...
What are you talking about, pljvaldez??!! You're helping a lot!
It's getting pretty late in my timezone, so I haven't tried out your suggestions yet. However, if I recall, kexi claims it can import .mdb files under Windows. It uses some sort of native Windows program which mdbtools is supposed to replace for Linux. I can download open office and/or kexi for Windows and try the conversion. Great idea!
If I can get that .mdb file converted to a .kexi file (or .odb), I should be in business. My only fear is that, if I have to convert it to some other format first...several successive conversions can mess things up. I had that experience trying to get my Microsoft Address Book in to Linux...again without spending hours manually retyping the whole thing. It lost a bunch in the translation. Thunderbird's Address Book picked it up partially. I couldn't get it into Rubrica at all. Only Evolution managed to preserve all entries intact...even though I'm not in love with the format, I can find what I need.
So, if I can get a data base that will preserve my tables and forms, even if I have to rewrite some queries...I'm almost there.
I'll check out the oo link too.
I don't know what mdbtools is exactly, but I assume that they will only help you convert Access tables to another 'prepared' database.
I think that's pretty much what I have in mind.
As you say, Access has its problems. I just discovered that an entry I made (using a form) didn't get entered. I tried again. It wouldn't take it. So, I went to the table and started to enter it manually. Access didn't like that and popped up some kind of error message and suddenly, the data I had previously entered in a form just appeared in the main table...weird!
On the other hand, the system is working. I use the db daily as an end user. That's what I'm supposed to be. I just learn how to do all these things, in a minimal way, because I can't afford to hire pro's to make programs for me.
It's really not laziness (maybe a little). I just have so many tasks to complete all the time, and have had so many problems to fix over the years, that I've become a semi-expert in lots of things...by necessity. We have to be thankful for the problems because that really is how we learn. On the other hand, no one can do it all. We have to rely on someone else to invent Linux in the first place, or internet protocols and on and on. There just isn't time to learn everything or produce everything ourselves.
I might take the liberty af adding a couple final thoughts here because I really am interested in seeing a suitable MS Access replacement on Linux. I looked at the OpenOffice 'solution', and it is simply to reference the Access DB remotely thru ODBC. You still have to install and have Access running on Windows. To me, that is not a solution, for the same reason I don't install Wine or VMWare. If I need to run a program that's only available in Windows, I have a dual boot machine. I'll just go to Windows and run it. The goal is to make Windows as unnecessary as it is irritating.
There are only two programs that up to now, I have no suitable replacement for on Linux ... MSAccess and Goldwave, a .wav file editor. Audacity is gaining on Goldwave, but it's not there yet. Access is still much further in a league of its own. I still occasionally do contract work in Access, and I'm not willing to give up having it on my PC, but I would feel a lot better knowing that I, personally, didn't need it.
Probably the primary personal use database I have is my .mp3 collection. The whole process of ripping, editing, and information storage a year ago was a Windows arena. Now, thanks to programs like grip, lame, mp3report, Audacity, etc, only final editing of the sound file, and data manipulation (searching for duplicates, identifying gaps in my collection, locating misspellings, etc) are done in Windows. I am currently (and rather lackadaisically, I'm afraid) working on replacing the data manipulation effort with a Postgresql DB. Getting it in place ain't easy or fast, but it will eventually be there. Then using Rekall, I can do the QBE queries or direct SQL queries as easily as in Access.
On a bet, given the fact that I've done it before, I think it could be done in a day or two, so it's not as if it's an overwhelming job. But what's a few days or weeks or someday ...?
Ingla, if you're still checking this post, it looks like richk has begun posting a step by step guide to helping you get your database to linux (only in a more general form of a howto). Lucky for you, you're using Ubuntu (which is debian based, so most every should work for you).