[Tutor] Python or MySQL/PostgreSQL?

Sylvain & Maureen Leclerc sylvainl at uniserve.com
Wed Dec 17 00:53:07 EST 2003


Python or MySQL/PostgreSQL?

This question must have been asked a million times before, but I need to ask it.  But first, some background.


I need to create a different database (or rather a different set of databases) for my office to integrate a number of disparate functions.  My office uses index cards, ACT! database, paper filing, email, Post-it notes, and each staff has her/his notebokk into which everybody else write reminders.  You guess the results:  a mishmash of information everywhere; training new staff is a nightmare, and it is difficult to track information/communication for each of our members (we are a non-profit society).

My plan to deal with this is to minimize paper as much as possible and integrate as many functions as possible into a central repository.  I was thinking of using for instance ZOPE to create an Intranet into which our policies, procedures, and training manuals can be posted (and updated once) and easily keyword-searched.  I was also thinking of integrating written communication (fax, email, papermail) with the database(s) so that all the information pertaining to a member can be retrieved here.  One of the reasons for this is that we have field staff who need as much current and complete information as possible to be effective in helping our members.  Our field staff are disseminated over a large geographical area so it seems that it would be more logical for them to have access to our database in real time over a secure network.  

I just stumbled over Python a couple of weeks ago when looking at ZOPE and am wondering if developing a database using OOP would be more effective than using the traditional (yet more familiar) relational database model.  Someone mentioned that I may limit myself going Python instead of, say, MySQL or PostgreSQL, given the complexity I am getting into (it also has to convert data from ACT!, not all of which is easily exportable, and it has to have the features one would normally expect of a database).

My issue is the following:  we are currently converting our systems from Windows to Linux and I will need to learn a new database program anyway since the ones with which I am familiar are neither available or affordable.  My experience with databases is from a design perspective only; I haven't programmed anything but generally can read scripts and understand/modify them.  All the database applications I learned in the past had GUIs which allowed me to design from menu-driven interfaces and objects.  In addition, computer support and database design are not my main function, nor part of my training.  I am an administrator in this office and I happen to know more about computers than the other staff.  The job's gotta be done and I just have to do it (we can't afford paying someone to do this).

Therefore my initial question (Python or MySQL/PostgreSQL) is loaded with the above situation.  In other words:
1. Will Python allow me to do what I intend to do?
2. What are the limits in Python that MySQL or PostgreSQL do not have.  What can it not do that the SQLs can do?
3. Same question as above but in reverse: what can Python do that the others can't?
4. Comparatively-speaking, what is the learning curve in both cases (Python vs the SQLs)? (I am not a programmer)
5. How fast can I get results?  I was thinking of developing the database modularly.  First by replacing our ACT! database (and perhaps breaking the heavily-customized database into smaller, more manageable parts all linked together) thus requiring importing DBF files and ACT! memo fields, then by creating and linking other databases (computer and paper-form), and finally by linking emails and other documents to it.
6. How easy will it be to get support when I hit a wall?

Thanks for reading this and for helping me in my quandary.  Once I made a decision as to which way I choose, there will be no turning back since I need to forge ahead and get all those issues behind me.

Sylvain Leclerc

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20031216/24f8f3b7/attachment.html


More information about the Tutor mailing list