Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to Normalize?
Message
 
À
18/02/2002 09:43:25
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Divers
Thread ID:
00620634
Message ID:
00621570
Vues:
9
This message has been marked as the solution to the initial question of the thread.
Pete,

Let me start by aiming you at fox.wikis.com where you can search on Normalization and get information in great detail about the normalization process.

That said ...

How far can/should I go in evaluation?

You should bring your data design to the highest normal form that applies, always. There are some situations where you may choose to back off from fully normalized after you have reached, but you should always reach fully normalized. When you read about the normal forms you will discover that there are 6 of them 1st, 2nd, 3rd, Boyce-Codd, 4th, and 5th. 3rd normal fomr applies to all tables, the last three only apply in certain circumstances.

Is there a way of determining whether a table has been normalized enough/too much?

Normalization is process for optimizing a data design for data entry and updating. When optimize for entry and updating you will often be De-optimizing for retrieval and reporting. You need to balance the design so your application performs well. What that entails is fully dependent on the application and its business domain.

Should the tables be related?

This is the root of a relational databse, that is the data is spread into a number of related tables rather than one monolithic flat file.

Can relationships be changed on the fly?

Yes, this is very common. For example in a reatil sales system you might have a data design like this;
Customers ---> Invoices ---> Invoice Line Items ---> Inventory
This design fully describes the invoices and how the data is stored. However your system may be asked to list Inventory items and which customers bought them in order by Inventory item. In order to do this you would need to see the data this way ...
Inventory ---> Invoice Line Items ---> Invoices ---> Customers
It is the very nature of a relational database that allows you to look at the data either way. IN a flat file you would never be able to easily flip the relationships to see the data the other way.

What about updating the tables with new data?

It is updating existing data and inserting new data that normalization optimizes. It does this by providing one and only one place for each data element.

Is splitting a table the same as normalizing?

Normalization will split the field of a table into more than one table, however simply splitting a table is not, necessarily, normalizing.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform