well... when I do db design, I tend to start with the objects of my system. The one that comes to mind in your case is people.
so you'll need a people table. well what are the details of a person? first_name Last_name Middle_name1 Middle_name2 Maiden_name [any other basic bio data] so you'll need those columns.... Well to keep track of each person, each one will need an ID... id's are usually numbers, so now you add a: person_id field. This field would likely have an auto_increment attribute to help number them for you.... ok... now that we have people, what else do we need? relationships between them.... well... in terms of human beings, everyone has one biological mother and one biological father, so we add in mother_id father_id leaving the values of these as null would be equivalent of being 'unknown' and we now have, data-wise, a system that can trace biological heritage, can handle siblings and half-siblings. Other ideas for objects: Marrages - this one would be tricky/interesting, as marrages can change over time, and people can have multiple marrages (although usually not two at a time, unless bigamy is allowed in your user's state/country). Strictly speaking, marrages are not necessary to trace heritage, but are good info... > -->From: Nitin [mailto:[EMAIL PROTECTED] > -->Sent: Monday, October 27, 2003 10:46 PM > -->To: [EMAIL PROTECTED] > -->Subject: Ancestry program > --> > -->Hi all, > --> > -->I'm developing a web based ancestry program. The user > wants it to be > -->static, that means, it isn't for all to use, but his family. Better > to > -->say, it'll contain only his family tree. > --> > -->Now, I cant think of the proper db design, which will help any user > to > -->find his or her relationship with any other person in the tree. > Though, I > -->can design a simple database, where everything will have to be done > -->through queries and scripts, but I want those queries to keep as > simple > -->as possible. > --> > -->Any help will be appreciated, as I'm new to such a problem. > --> > -->Thanx in advance > -->Nitin > > > > -- > MySQL General Mailing List > For list archives: http://lists.mysql.com/mysql > To unsubscribe: > http://lists.mysql.com/[EMAIL PROTECTED] > > -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]