dBaseIII anyone?

I’m wondering if it is possible to use FactorySQL with dBase III files. We are looking at using FSQL for another piece of the same project, but then we need to deal with some dBase things from the customer as well. I can get everything set up, the ODBC connection tests are successful, but when I go to start a group, I get the error message:

…which I pretty much expected. I noticed in the FSQL help page here it says it can communicate with other databases with specialized definition files. If it is possible, how much work is involved?

Thanks for your help!

Oh, there would be relatively little work involved. Essentially, the definition files define data types, table creation syntax, etc. You could probably work your way though it with some hit-and-miss work and by looking at the other definition files.

We’ll be happy to help, but if you want to take a shot at it, here’s how:

  1. Copy an existing definition file, and change the name to like “dbase.xml” or something. It would be useful to start with one that might share the most syntax, like Postgres or something.

  2. Change line 3 (dbname) to be DBase

  3. Important Change line 4 (Driver) to match the “Driver Name” from ODBC. This is how FSQL links a definition file to a driver. If you open the Window’s ODBC manager, and go to your DSN, you’ll see 2 columns: the dsn name, and the “driver name”. Put this exactly into line 4 of the definition file.

  4. From here on, it’s just about getting the syntax right. Things like data type names, the auto increment definition (one thing postgres probably isn’t correct on), etc.

Each time you change the file, you need to restart the FactorySQL service (through control panel->administrative tools->services) to make it take effect. So, after step 3, if you restart the service and reconnect, you shouldn’t get “definition file not found” anymore. You might get errors creating tables, but that’s step 4’s problem.

Feel free to reply with any further problems, or you could give us a call some time and we could work on it interactively over GoToMeeting.


Thanks for the quick response. We are trying very hard to convince the customer to change to something else, so at this point I’m not actually going try. It is good to know that it can, however. Thanks again!