Hello guys,

I am a bit new about this SQLObject approach to things, so I was thinking that maybe developing my current project in Python/SQLObject would help me develop some skills, but I have reached a point in which I need guidance.

In my project I am going to be working with financial accounts, Credit Cards, Savings accounts, Checking accounts, etc... The issue I am stalled at is that I do not know how to store the data that are specific to each.

A simplified example of what I am trying to do is:

All accounts have:
 - name
 - description
 - creation date

Credit Cards have:
 - credit limit
 - cut date
 - validity date

Checking Accounts have:
 - also have a cut date

So, my question is:

How should I design my tables to store the data?

I have thought of some alternatives myself, which are:
1 - Creating a separate table for each type, which would be difficult to 'scale' from and also a bit difficult to track transactions (would be a mess at the time of making 'joins' etc..)
2 - Creating a single table for all (would make me a big bothersome table that has blank fields/columns taking up some beautiful space, and it wouldnt be as organized as the next alternative).
3 - Creating one table that holds the information that all accounts have, and one table that holds the specific information of each type.

Even though this is not a homework or school project at all, I felt free to ask a teacher, when I was working on #2 (since I discarded #1 more or less since the begining), and he pointed me to #3 for efficiency, and I thought maybe I should ask here for more experienced users to point me on the right direction on the implementation of this project (or maybe a good link or book to read) using python/sqlobject.

Any suggestions/comments/references are welcome.

--
Michael Adonay