Python, xml, databases, ...
Rasjid Wilcox
rasjidw at openminddev.net
Wed Dec 3 07:39:28 EST 2003
Zunbeltz Izaola wrote:
> Up, I concept missundertand of mine. I want to know if
> MySQL/PostgreSQL are only used in large web servers and such things,
> or are also used in small programs that both the server and client
> runs localy.
I've definitely seen MySQL used where both server and client run locally,
and I'm sure there is plenty of the same with PostgreSQL.
>> What platform are you planning to run this on? If it is Linux, then
>> either MySQL or PostgreSQL are easy options - most distros have
>> pre-compiled versions out of the box.
>
> I want to have the program in both linux and windows.
>
>> On Windows, both MySQL and PostgreSQL rely on the Cygwin dll. It looks
>> like MySQL has an easier Windows install, but their use of the cygwin dll
>> outside of Cygwin proper has serious stability consequences if the user
>> installs another cygwin based program. PostgreSQL is a 'proper' cygwin
>> program, but will be harder for non-unix/linux people to
>> install/administer.
>>
>> You could also consider Firebird (http://firebird.sourceforge.net/) it
>> has a native Windows version as well as a Unix/Linux version) or SQLite
>> (http://www.hwaci.com/sw/sqlite/) with PySQLite
>> (http://pysqlite.sourceforge.net/manual.html).
>>
>> There is also GadflyB5 (http://gadfly.sourceforge.net/) which looks like
>> it
>> is written in pure python. There are probably other options too.
>>
>
> Can you give me an advaice about what has a better easy to
> use/performance ratio.
Unfortunately, no, since I'm at about the same stage you are (ie, trying to
work out what to use).
I have _personally_ rulled out MySQL on Windows (due to it packaging the
cygwin dll in a non-standard way, since I use Cygwin at work), and will
only consider PostgreSQL on Windows if I can make the install trivial for a
non-technical user.
SQLite does not support Foreign Key constraints, so I think it is out for
me. Gadfly is not multi-user, so it is also out for me also.
Firebird is the only full featured open-source database that I know of that
has native binaries (non-cygwin) for Windows, and also runs on Linux and
Mac (although a native Windows port of PostgreSQL is in progress).
Another option that I have is to on Windows use the MDAC component and use a
MS Access backend database, and use MySQL or PostgreSQL on Linux/Mac.
See http://www.markcarter.me.uk/computing/python/ado.html for some info on
how to access a MS Access database from Python on Windows.
Without knowing what SQL feature set _you_ are after, it is impossible to
know what is the best option for you.
>> > I would build a GUI for the program (presumibly with wxPython). I want
>> > to separate the GUI layer from the program layer. For comunication of
>> > this two layer I have think in asyncore, but i have read something
>> > about twisted and piro. Can anyone give my his/her opinion about this?
>>
>> Funny, I asked almost the same question about 20 minutes before you did.
>
> I have no see the question yet :-)
My question was entitled 'Building a GUI agnostic database application'.
Cheers,
Rasjid.
More information about the Python-list
mailing list