well, start with reading a book about designing databases, especially about
the subject 'normalisation'.
normalisation is a way to split up data ('entities') in a way that every
piece of data only occurs once in your database. (although sometimes for
practical reasons you may decide otherwise, but normalising your data is
always a good first step!)

Since you say newbies will like this, i'll try to give an example.

suppose you have a database of books. The database stores the book, it's
title and so on, the author, the publisher and the bookstores that sell this
particulair book:

book title description author author_address publisher publisher_address
bookshop bookshop_address [bookshop bookshop_addr], []

well, you could try to make this fit in one table, but you'll get a tough
time.
so, you split up ('normalise'):

books:
book_id
ISDN
title
description
author_id
publisher_id

authors:
author_id
author_name
author_addr
author_email

publishers:
publisher_id
publisher_name
publisher_addr
publisher_phone
publisher_email

bookshops:
bookshop_id
bookshop_name
bookshop_addr
bookshop_phone

availability:
available_id
book_id
bookshop_id

So, you split up your data in more elementary parts.

Especially notice how you create a table that links books to the bookshop
that sell those books, you only need the two id's from the book and the
bookshop.

If your very smart, you might figure out by yourself further. Elsewise i
still recommend to go to a (online) bookshop and get a nice book about
developing databases.

gl,

rene


----- Original Message -----
From: "Jeff Holzfaster" <[EMAIL PROTECTED]>
To: "General MySQL List" <[EMAIL PROTECTED]>
Sent: Wednesday, April 18, 2001 4:01 AM
Subject: Database Planning


> I realize this may be a little OT but I'm sure many of us MySQL rookies
> would be interested in the responses.
>
> I would be interested in hearing how someone goes about planning the
layout
> of their database including how they determine what tables, fields, column
> types, queries, etc they will need.  How do you start the process?  How do
> you determine the correct questions to ask of your application?  Do you
use
> some kind of diagramming tool?  Blah... Blah... Blah...
>
> Thanks!
>
> Jeff
>
>
> ---------------------------------------------------------------------
> Before posting, please check:
>    http://www.mysql.com/manual.php   (the manual)
>    http://lists.mysql.com/           (the list archive)
>
> To request this thread, e-mail <[EMAIL PROTECTED]>
> To unsubscribe, e-mail
<[EMAIL PROTECTED]>
> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
>


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to