473,386 Members | 1,873 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Normalization

I found an interesting thread on this from Nov., 2000, but it didn't
fully answer my question. I understand normalization, but am trying to
find the line between good database design and personal preference.
I'm wondering if I've created too many tables. Normalization as I
understand it would be to create tables if a field can have more than
one occurrance (for example, book titles by an author). But if a field
will only have one value, does it make sense to group into additional
categories? I'll try to keep this short, but the question probably
only makes sense with the actual database involved. It's a fairly
typical application: a large group of stores, information includes the
usual - store nbr, address, phone number. Then I have related tables
such as pbx, with fields for type, remote access number, password,
date installed, etc. Another table with same info for the
vru/voicemail pc. There are other tables, as well. In the example of
the pbx, there's only one at each location, so there's only one record
for each location. Is it unnecessary, then, to have a separate table?
Would it be more efficient or result in faster queries to put all
these fields in one large table, even if I wind up with 50+ fields?
I've used pbx and vru as examples, but there are other similar tables.
More than one vendor, analyst and technician can support a location,
so those are in a separate table, which would be the only way to do it
with normal forms, but I'm unsure about the rest. My design seems
organized and easy to understand, but queries over the network are
torturously slow. If you made it to this point, I'm much obliged.
Thanks.
Joe
Nov 12 '05 #1
3 3144
JoeB wrote:
I found an interesting thread on this from Nov., 2000, but it didn't
fully answer my question. I understand normalization, but am trying to
find the line between good database design and personal preference.
I'm wondering if I've created too many tables. Normalization as I
understand it would be to create tables if a field can have more than
one occurrance (for example, book titles by an author). But if a field
will only have one value, does it make sense to group into additional
categories? I'll try to keep this short, but the question probably
only makes sense with the actual database involved. It's a fairly
typical application: a large group of stores, information includes the
usual - store nbr, address, phone number. Then I have related tables
such as pbx, with fields for type, remote access number, password,
date installed, etc. Another table with same info for the
vru/voicemail pc. There are other tables, as well. In the example of
the pbx, there's only one at each location, so there's only one record
for each location. Is it unnecessary, then, to have a separate table?
Would it be more efficient or result in faster queries to put all
these fields in one large table, even if I wind up with 50+ fields?
I've used pbx and vru as examples, but there are other similar tables.
More than one vendor, analyst and technician can support a location,
so those are in a separate table, which would be the only way to do it
with normal forms, but I'm unsure about the rest. My design seems
organized and easy to understand, but queries over the network are
torturously slow. If you made it to this point, I'm much obliged.
Thanks.
Joe


The problem isn't clear to me. Are you considering adding the pbx
attributes (type, remote access number, password,date installed) to the
store table? You should only do that if each store will always have a
pbx, and will never have more than one.

If your queries are slow, there may be ways to speed them up short of
redesigning the tables. There are tips on this in the Access Developer's
Handbook, if you have it.

Nov 12 '05 #2
TC
Joe, it is very difficult to comment on any proposed table structure, unless
you state the primary key of each table.

For example, you say there is a table "pbx, with fields for type, remote
access number, password, date installed, etc.". It is really not possible to
comment on that table at all, unless you state its primary key.

Depending on the primary key, the table might be:
- correctly designed;
- correctly designed, but have restricions that you might not be aware of,
or
- incorrectly designed.

So maybe post back with some ables >and< associated rimary keys?

HTH,
TC
"JoeB" <jb**********@fds.com> wrote in message
news:e6**************************@posting.google.c om...
I found an interesting thread on this from Nov., 2000, but it didn't
fully answer my question. I understand normalization, but am trying to
find the line between good database design and personal preference.
I'm wondering if I've created too many tables. Normalization as I
understand it would be to create tables if a field can have more than
one occurrance (for example, book titles by an author). But if a field
will only have one value, does it make sense to group into additional
categories? I'll try to keep this short, but the question probably
only makes sense with the actual database involved. It's a fairly
typical application: a large group of stores, information includes the
usual - store nbr, address, phone number. Then I have related tables
such as pbx, with fields for type, remote access number, password,
date installed, etc. Another table with same info for the
vru/voicemail pc. There are other tables, as well. In the example of
the pbx, there's only one at each location, so there's only one record
for each location. Is it unnecessary, then, to have a separate table?
Would it be more efficient or result in faster queries to put all
these fields in one large table, even if I wind up with 50+ fields?
I've used pbx and vru as examples, but there are other similar tables.
More than one vendor, analyst and technician can support a location,
so those are in a separate table, which would be the only way to do it
with normal forms, but I'm unsure about the rest. My design seems
organized and easy to understand, but queries over the network are
torturously slow. If you made it to this point, I'm much obliged.
Thanks.
Joe

Nov 12 '05 #3
On 21 Nov 2003 10:31:38 -0800, jb**********@fds.com (JoeB) wrote:
Normalization as I
understand it would be to create tables if a field can have more than
one occurrance (for example, book titles by an author).
If you learned normalization from a book, you need to get a better
book.
In the example of
the pbx, there's only one at each location, so there's only one record
for each location. Is it unnecessary, then, to have a separate table?
I'm pretty sure you need a table for pbx. But, for the record, how
did you come to the decision to put it in a table of its own in the
first place?
Would it be more efficient or result in faster queries to put all
these fields in one large table, even if I wind up with 50+ fields?
It might make some queries faster, but you'll find it hard (or
impossible) to enforce all the required integrity constraints.
My design seems
organized and easy to understand, but queries over the network are
torturously slow.


What are you trying to query? The universe? Have you tried
subreports?

--
Mike Sherrill
Information Management Systems
Nov 12 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
by: Steve Jorgensen | last post by:
I've come up with this issue in several apps now. There are things that, from one perspective, are all handled the same, so it would be desirable that they all be handled in the same table with...
7
by: Adrian | last post by:
Normalization Question - Please bear with me, hopefully things will be clear at the end of the question. Given a treaty table containg treaties; Treaty1, Treaty2 etc and a benefit table;...
2
by: Kostas | last post by:
Hi all, I strived understanding the concepts of all normal forms up to the domain-key normal form but there are some issues I still am unsure of, and I will describe the first one in this post....
7
by: John Welch | last post by:
I have three tables and the way they are currently set up violates good normalization, but I'm having trouble figuring out a better way. Can someone suggest a more elegant solution? My tables...
20
by: hippomedon | last post by:
Hello everyone, I'm looking for some advice on whether I should break the normalization rule. Normally, I would not consider it, but this seems to be a special case. I have created an...
36
by: Shraddha | last post by:
What is mean by normalization of pointers...Where we use that?
1
by: weird0 | last post by:
I know that is not the appropriate group for asking this question, but I do not know of any better forum. Can anyone plz explain clearly what normalization is? The first three normal forms upto...
22
by: sophia | last post by:
Dear all, can any one explain what is meant by pointer normalization given here:- http://c-faq.com/ansi/norml.html
1
by: Tsholofelo | last post by:
what is normalization, the different types of normalization and examples
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.