On Tue, 2004-09-07 at 06:06, theflyinghawk@stripped wrote:
> Hi everybody,
> I am in trouble with some design questions, since I am not so clever with
> Databases. Let's say my Db can be designed according to the standard rules that
> say it is better to split data in tables with uniform features and use the
> relations advantages. In my Db I can do it and I did (at the moment I am using
> MS Access 2002 but I think dream of migration toward strongest Db engines, just
> like MySQL etc. ).
> The matter is that my Db could be shown as a single table (Work records), that
> is the core and that has relations with all the other tables that can add more
> details (Operators (Position, Cost, Origin, etc.), Calendar (WeekDay, YearMonth,
> etc.), Department (Projects, Workshop, Sales, etc.)
This is not the question one can answer from such brief discussions.
Normally both normalized approaches and de-normalized approaches have
their benefits and drawbacks.
Normalized approach is better to start with, it saves you from various
data changing anomalies as allows to do some updates faster. It also
frequently results in significant space savings as you have a lot of
redundant data removed.
De-normalized approach or single table on other hand could show better
performance in select queries allowing to avoid costly joins and giving
more index usage abilities. This is however not always the case - a lot
depends on your data distribution and types of queries.
I would benchmark both cases and select the best if performance is
critical for your application.
Peter Zaitsev, Senior Support Engineer
MySQL AB, www.mysql.com