Fog Creek Software
Discussion Board




Linux (Crossplatform) database application dev ?

Having built small database applications in both Access, Delphi, Delphi 3 and VC++. I have since a long time been working in another area than database applications. Since 1998 I work almost exclusively under Linux.

Often I have had the need of an crossplatform "Access".
Something that where you can build Master/Slave views easy and have a nice user inteface without spending a year building a framework.

Now the need for some solution becomes more and more pressing. I see too much abuse of Excel or Word Macros as database replacement.  I can rather quickly build a database, with good relations, but since I can not easilly put a GUI on it, noone can use it.  (well except me using SQL.. :P )

Do anyone have good experiences of any special Open Source framework ? How does wxWidgets work with databases ? Is it easy to make them "DB aware" ?
Kylix is not realy an alternative although I have been thinking about the $250 Professional version.

I would like to find a good framework to learn and start using so I get some kind of template set.
What are the recomendations and do you have any pointers to tutorials, examples etc.
Or is it just too early to look for such a thing ?

Accessless...
Friday, July 02, 2004

Kylix, unfortunately, isn't very good on linux platforms. Borland have done something horrible which makes it only install on a few (old) platforms.

And it doesn't have Access style master/slave views.

We're using Qt, which a) works {just}, b) is free to play with on Linux, c) cross platform.

Downsides to Qt: The documentation is a bit of a fib. We have a Wiki full of gotchas where reality doesn't quite match it. There are some horrors in the realm of makefiles. They obviously can't use make properly, so they have a tool which writes makefiles. Unfortunately, it doesn't write the dependencies properly. Sigh.

It's a single inheritance model. Which is infuriating... but we're into a whole realm of "Look, I can USE multiple inheritance without any issues. Just because some people can't is no reason to fail to support it."

And it *STILL* doesn't have a master/slave view like Access.... as far as I can tell nothing does. They all just use grid views for the slave bit.

We ended up writing one that lets you design forms for the slave view. It works rather nicely, but currently only with our custom db interface to postgresql[1]. The technology might well be for sale[2], but it needs polishing first.


In short if your "must have" is Access-like master/slave forms, I think you're out of luck.


[1] It's there to prevent SQL injection attacks on the database. Well, when it's complete it will be...

[2] I am not the boss, so I don't get to decide. The bosses are, however, unusual in that they're sane so this sort of deal isn't out of the question.

Katie Lucas
Friday, July 02, 2004


Use mySQL on the backend and then use Access as a front end.

Seriously, I do it all the time.

I have an Access database that is connected (simultaneously) to a SQL Server backend, a mysql backend, and Access tables.  Just install the mysql odbc driver for windows and treat it as another data source.

It becomes really powerful if/when you have to do cross-database queries.

This is *NOT* an end-all-be-all solution, but it will help the prevent the secretaries and office staff from building nasty massive Excel contraptions.

KC
Friday, July 02, 2004

In my experience, massive Access monstrosities aren't much better than Excel monstrosities.

Why not something in perl or similiar with a MySQL/SQL/WhateverDB backend?  Smaller footprint, more coding.  More customizable.

Lots of pros, also some cons.

In my experience though, birds fly, fish swim, MDBs get corrupted.

muppet from madebymonkeys.net
Friday, July 02, 2004

You can try PowerBuilder -- supposedly it helps you build DBMS apps pretty quickly.

Captain McFly
Friday, July 02, 2004

infomaker aka powerbuilder light sells for a song and can make master detail forms for crud. For batch updates i pipe from a view to the target table.

Are you looking to run the client itself on Linux. I think infomaker has been tried with wine/Xoveroffice.

Karel
Friday, July 02, 2004

I can highly recommend the use of wxWindows for cross platform development.  As for the database to use, I'd recommend something that's got a centralized database server you can use.  You probably already have a database server in house, so make use of that.  wxWindows (now wxWidgets) uses ODBC for its database access, so if you can connect to the database with ODBC, you can use it with wxWidgets.

Clay Dowling
Friday, July 02, 2004

Powerbuilder made me cry. Really. It's the only bit of software in a decade that made me cry with frustration.

I hated it.

Katie Lucas
Friday, July 02, 2004

From what I've read here, there seem to be a lot of knowledgeable people here.
Has anyone had a look at: http://www.rekallrevealed.org/ or http://www.totalrekall.co.uk/ ?
This is in my opinion the closest one can get to something like Access. (which shouldn't be used for full-blown applications either, but it could be used for quick data entry I suppose).
Has anyone maybe seen GNUenterprise in action:
http://www.gnuenterprise.org/tools/common/databases/ ?

I'm looking at www.wxpython.org to fill the gap in cross-platform GUI application development (for my project). Any experiences with this.

Michael Van Wesenbeeck
Saturday, July 03, 2004

I just saw an ad for Revelation Software.

They the propietary OpenInsight  DB application for Linux.
It provides a web-connection through a CGI-gateway.
Link: http://www.revelation.com/revelation.nsf/byTitle/5DA001116EB098C085256DC500658FF4?OpenDocument

BTW, anyone have any comments on GNUE?

Michael Van Wesenbeeck
Monday, July 19, 2004

I think you are completely wrong regarding Rekall not being suitable for crafting large database applications. Also I bet you didn't know that Rekall Forms and Reports can be web enabled at the click of a button. Anyway here are a few example of where Rekall is being used
The Joint European Human Gnome Consortium, one college in the USA have used Rekall to produce an EPOS system in the college bookshop, one German state police force use Rekall to produce a HR application, a German state education authority use Rekall for curriculum development and much more

John Morgan
Saturday, July 31, 2004

*  Recent Topics

*  Fog Creek Home