Just tell us what you are doing. What tables do you have, and what fields
are in each table? How are the tables related to each other.
For example, a contact management database might have one table that stores
information about people. Another that stores information about Companies.
Another that ties people to the companies for which they work. Another that
stores phone calls made and details about each call. This call table would
be linked to the person you called and that would be further linked to the
company for which they work.
Creating a flat design would put all this in one table, and every single
time you logged a call, you'd also have to put the company data and person
data. A flat design very often leads to duplicate data in your tables.
That is one way to spot a bad design.
Another issue can be including data in your fields. Lets say you want to
track payments made by customers. The customer gives you a check for $500.
$400 is to cover the rent, $50 is to pay a late fee, and $50 is to pay for a
new lock on their front door that they requested. A poorly designed table
might have all the fields for the payment data (customer, date, amount,
etc.) and then would have a field for each type of service being paid (rent,
deposit, late fee, etc.). For most payments, only a few of those fields
would be used. This generally indicates a bad design. Another key here is
that the field names contain data. This is normally wrong. A better way
would be to create a main table for the payment, and a separate table for
details. If the receipt only pays rent, you'll have a record in each table.
If it pays rent and a late fee, you will have one record in your main table
and two in your details table. The details table would have the Rect
Number, the ItemAmount, and the ItemDescription or ItemType. You might even
have a third table to store the valid ItemTypes!
Post back and we will try to help you (unless this message gave you some
ideas).