473,722 Members | 2,458 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Table Design- one or many?

I have just started working on a project that is partially complete. It
is an application that is using access to store test results. The test
results are being stored in two Access 2000 databases.

DB #1 = StudentDB
DB #2 = TestResulstsDB

Why are there 2 dbs? I do not know - but that is one of the tings that
we will be changing. Combining all of the data into one database.

But the current design is what I am concerned about. By no means am I an
expert - nor have I had any formal training in Programming or DB Design.
So pardon me if the question is elementary.

I feel I have a decent handle on good db design so when I realized what
was going on here - I was a bit concerned.

Ok like I mentioned above there is a Students DB and a TestResults DB
(not two tables in one databases - but two databases )

When a student takes a test the results are stored in a dynamically
built table in TestResults DB.
So if the student takes 5 tests there are 5 corresponding tables for
this student - one for each test.

Several questions - comments/concerns

#1 My instincts tell me this design will be an absolute nightmare when
trying to retrieve test results. Am I off base here?

#2 Some of the tests will have 600 records per test that will need to be
stored. So a single table with many test results could grow quickly.
Each record consists of four fields of numeric data. This is not a web
app - this is a standalone application and it will be the only app
running on this machine. With maybe one other networked machine.
How many records will be to many records in one table?

#3 There will be multiple tests with different sets of results. Would it
be beneficial to design one table per set of results or one table with
all results?
Where for each test type only some of the fields will have data -
leaving many null values in the results that are not related to the test
in question.

testresults1 testresults2
fieldA number fieldE int
fieldB number fieldF varchar(35)
fieldC number fieldG number
fieldD number
OR

testresults
fieldA number
fieldB number
fieldC number
fieldD number
fieldE int
fieldF varchar(35)
fieldG number
Thank you in advance for your help.
Kim




Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 12 '05 #1
15 2138
<< Why are there 2 dbs? I do not know - but that is one of the tings that we
will be changing. >>

I don't recommend you do this unless you have checked closely on why it was done
that way in the beginning. My guess is that some other bigger system generates
the student database because the students change from year to year. The old
adage is don't fix something that ain't broken.
--
PC Datasheet
Your Resource For Help With Access, Excel And Word Applications
re******@pcdata sheet.com
www.pcdatasheet.com
"kimi" <ki*@kimmyXSPAM X.com> wrote in message
news:40******** *************** @news.frii.net. ..
I have just started working on a project that is partially complete. It
is an application that is using access to store test results. The test
results are being stored in two Access 2000 databases.

DB #1 = StudentDB
DB #2 = TestResulstsDB

Why are there 2 dbs? I do not know - but that is one of the tings that
we will be changing. Combining all of the data into one database.

But the current design is what I am concerned about. By no means am I an
expert - nor have I had any formal training in Programming or DB Design.
So pardon me if the question is elementary.

I feel I have a decent handle on good db design so when I realized what
was going on here - I was a bit concerned.

Ok like I mentioned above there is a Students DB and a TestResults DB
(not two tables in one databases - but two databases )

When a student takes a test the results are stored in a dynamically
built table in TestResults DB.
So if the student takes 5 tests there are 5 corresponding tables for
this student - one for each test.

Several questions - comments/concerns

#1 My instincts tell me this design will be an absolute nightmare when
trying to retrieve test results. Am I off base here?

#2 Some of the tests will have 600 records per test that will need to be
stored. So a single table with many test results could grow quickly.
Each record consists of four fields of numeric data. This is not a web
app - this is a standalone application and it will be the only app
running on this machine. With maybe one other networked machine.
How many records will be to many records in one table?

#3 There will be multiple tests with different sets of results. Would it
be beneficial to design one table per set of results or one table with
all results?
Where for each test type only some of the fields will have data -
leaving many null values in the results that are not related to the test
in question.

testresults1 testresults2
fieldA number fieldE int
fieldB number fieldF varchar(35)
fieldC number fieldG number
fieldD number
OR

testresults
fieldA number
fieldB number
fieldC number
fieldD number
fieldE int
fieldF varchar(35)
fieldG number
Thank you in advance for your help.
Kim




Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Nov 12 '05 #2
<<<< Why are there 2 dbs? I do not know - but that is one of the tings
that we
will be changing. >>

<<I don't recommend you do this unless you have checked <<closely on why
it was done
<<that way in the beginning. My guess is that some other <<bigger system
generates
<<the student database because the students change from <<year to year.
The old
<<adage is don't fix something that ain't broken.
Hello Thank you for replying.
Perhaps my answer to this questions was a tad flippant - and it was not
meant to be. I will completely understand the entire current design -
before any design changes are made. It is my job to re-design the
database(s). The app(s) areall in development and will required some
re-design to handle the new db(s) design.

Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 12 '05 #3
"kimi" wrote
DB #1 = StudentDB
DB #2 = TestResulstsDB

Why are there 2 dbs? I do not know -
but that is one of the tings that we will
be changing. Combining all of the data
into one database.

But the current design is what I am concerned about. By no means am I an
expert - nor have I had any formal training in Programming or DB Design.
So pardon me if the question is elementary.

I feel I have a decent handle on good db design so when I realized what
was going on here - I was a bit concerned.

Ok like I mentioned above there is a Students DB and a TestResults DB
(not two tables in one databases - but two databases )

When a student takes a test the results are stored in a dynamically
built table in TestResults DB.
So if the student takes 5 tests there are 5 corresponding tables for
this student - one for each test.

Several questions - comments/concerns

#1 My instincts tell me this design will
be an absolute nightmare when trying
to retrieve test results. Am I off base here?
You are absolutely correct. Creating multiple tables per test per student is
going to make it worse than any nightmare you've ever imagined when you need
to retrieve the information and do something with it -- a classic case of
using the tablename itself instead of data.
#2 Some of the tests will have 600 records
per test that will need to be stored. So a
single table with many test results could
grow quickly. Each record consists of four
fields of numeric data. This is not a web
app - this is a standalone application and it
will be the only app running on this machine.
With maybe one other networked machine.
How many records will be to many records
in one table?
Many people report here very acceptable performance with hundreds of
thousands or millions of records.
#3 There will be multiple tests with
different sets of results. Would it
be beneficial to design one table per
set of results or one table with all results?
Where for each test type only some of
the fields will have data - leaving many
null values in the results that are not related
to the test in question.


I don't think we have enough information to answer this question. In
general, it would probably be best to have just one table, but specific
details about the information you are keeping and how you will be using it
could indicate a different design for the specific situation.

Larry Linson
Microsoft Access MVP
Nov 12 '05 #4
Hi Larry Thank You for replying.
a classic case of using the tablename itself instead of data.
What do you mean using the tablename itself instead of the data?

Many people report here very acceptable performance with >>hundreds of thousands or millions of records.

Is there a defined limit where performance declines?
I don't think we have enough information to answer this >>question. In
general, it would probably be best to have just one >>table, but specificdetails about the information you are keeping and how you >>will be using itcould indicate a different design for the specific >>situation.


I don't think I have enough info yet - to ask this question. If that
makes sense. I am getting a better feel for the stat that needs to be
stored - when I have a complete understanding I will re-ask the
question.
Thank you for your time.

Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 12 '05 #5
Here is a link to the proposed design for the table of test results.

http://www.kimmy.com/sampletable.html

Any reason why this data cannot be stored in the same table?

Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 12 '05 #6
kimi <ki*@kimmyXSPAM X.com> wrote in message news:<40******* *************** *@news.frii.net >...
Here is a link to the proposed design for the table of test results.

http://www.kimmy.com/sampletable.html

Any reason why this data cannot be stored in the same table?

Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

There's really no reason why most things can't be stored in a table...
it's more usually how to *best* store them to make the tools that
SQL/Access gives you to manipulate them easily work best. So what may
look like efficient "human" design is actually database design.

Why not build your table like this: (TestNo,Questio nID,AnswerID) or
something like it? What exactly is this that you are modeling? Test
results of what? What are the rules? Is this like a survey? If so,
look up "Survey"+"K eri Hardwick" in this NG. She had some interesting
comments about it from a while back, but still very relevant. Another
question: what are you going to DO with the data? When it all comes
down to it, if you can't get the information you want out of your
database, then it's pretty much worthless. So I would start by making
sure that getting answers out of the database is a case of writing
reasonably simple queries. If you have to go through some major
effort to get an answer that should be simple, then you definitely
have a design problem.

Okay, so to rephrase Larry's question: What *exactly* are you
modeling, anyway? Are these exam scores, drug test results, what? And
*how* do you need to manipulate them? What is the business logic
behind this stuff? As yet, that's a question only you can answer.
Until you explain that, I don't think anybody can come up with a
conclusive answer to your problem, because you will not have given
sufficient information to solve it.

Hope this helps some.
Pieter
Nov 12 '05 #7
Hi Pieter,
Thank you for replying.
Why not build your table like this: >>(TestNo,Quest ionID,AnswerID) This design would not meet my needs..

orsomething like it? What exactly is this that you are >>modeling? Test
results of what? What are the rules?
Understood - I need to give more info.
The project is a piece of s/w for a medical device that will test
patients in a rehab center. The test is for balance. This is not a
question and answer per se. It is more of a test with parameters like
Speed, length of test(30 sec, 40 sec, etc), PSI, etc. There are also
four numeric fields (Q1,Q2,Q3,Q4 which equal four quadrants of a
circle.) these fields derive their values from the computation of data
in a 2nd table. The data in the 2nd table is raw test data and consists
of four numeric fields with X Y corodinates.
Is this like a >>survey? If so,
look up "Survey"+"K eri Hardwick" in this NG. She had some
interesting
comments about it from a while back, but still very >>relevant. This is not a survey but I will look at the article.

Anotherquestion: what are you going to DO with the data? When it >>all comes
down to it, if you can't get the information you want out >>of your
database, then it's pretty much worthless. So I would >>start by makingsure that getting answers out of the database is a case >>of writing
reasonably simple queries. If you have to go through some >>major
effort to get an answer that should be simple, then you >>definitely
have a design problem.


Agreed - I have faced this problem in the past. Garbage in Garbage out.

This software will keep a history of a patients tests. Reports will need
to be run to show that this system is helping people in therapy. In
otherwords their test results are improving over time - or not
improving.

I cannot completely answer what determines improvement. I think it will
be the the computed values of Q1, Q2, Q3, Q4 . I understand that this is
a key component of hwo to design the db.

I am still in the process of learning what they want and need. forgive
me if I have missed something.
If you can offer any opion on design it would be most appreciated.
Thank you in advance.

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 12 '05 #8
On a second note - my original question was regarding the different data
stored in the table.

There are approximately a dozen tests - with half of the tests requiring
all of the fields for storage - where the 2nd half of tests only need
one field for a compiled score.
is there a problem storing both of these test results in the same table.
I will have 90% of the fields null for half the test types.

In the future there will be more tests added. I am going to assume that
these tests may use some of the same fields and will require other
fields to be added.

Am I better off dividing the test types based on similar test results?
Please Reply to the Newsgroups..

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 12 '05 #9
this is what I see so far... what is missing ?

testInfo
testId autonumber (pk)
testName text(30)
speed
duration
pressure

patientInfo
patientId autonumber (pk)
patientName text
Nov 12 '05 #10

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

Similar topics

9
3208
by: Gleep | last post by:
sorry i didn't explain it correctly before my table is like this example fields: ID name username outcome date1 date2 date3 (etc..) - date15 price1 price2 price3 (etc..) I know that Mysql query order by will compare records on a specific date, but how do i compare multiple fields within the same record. Want to find the latest date within the record..
17
3889
by: black tractor | last post by:
HI there.. l was just wondering, if l place a "table" in the "editable region" of my template, will the text, graphics placed inside the this "table" MOVE BY ITSELF?? l mean, recently l had a "table" insert in my "editable region", have it placed in the "center" of the page.. while it display correctly on my browser, with setting at 1024x768 (IE6),
1
1921
by: Viken Karaguesian | last post by:
Hello all, I'm taking a shot at table-less design, but I feel like I'm poking in the dark here. I decided to try and recreate the main page of a webiste that I run, www.sayatnova.com, using CSS and table-less design. The page is currently based on nested tables. I'm not sure I'm doing this right, but I've created several DIV's and nested them within each other. But, it doesn't line up at all in Firefox, and the whole design seems...
0
1423
by: 2trax | last post by:
Hi all, I am trying to mimic the unix security model (users and groups) in a web app. I have thought of two ways of implementing this, but am unsure which would be better. The first design utilises three tables, while the second utilises two tables, however one of the columns in the first table is an an array.
7
2181
by: Michael Deathya | last post by:
Hi, I am pulling over 400 different metrics from an Excel spreadsheet into Access (97). Conceptually, each row represents a single set of these 400 metrics. However, because of the 255 column limit in Access I am faced with a dilemma: Do I create two tables (1 with 255 columns, the other with 145) and a lookup table that stores which metric is found in which table? Obviously this method would require VBA logic to coordinate any time I
6
1703
by: MLH | last post by:
If I open an A97 table, resort its key-field to descending order and attempt to close the table, A97 asks me if I wish to save the table DESIGN? Now really, I don't think the table design is being saved at all. If so, how does one explain these facts: 1) say I do click Yes to save the table design 2) later I open the table manually and, sure enough, key field is shown in descending order 3) I run this in debug window... ?DLookup("",...
4
3936
by: Nathan Sokalski | last post by:
When editing an ASP Table, Visual Studio does not allow me to edit it in Design View. This makes it harder to add elements, because I must add every element either by using Design View to create the element outside of the table and then using cut & paste in HTML View to move it to the desired location, or by manually typing the code in using HTML View. The first technique sometimes does not automatically update the list of elements...
7
4865
by: david | last post by:
I have asked this question before. But it does not work for me. Given radion buttons in the web form design page. What I did is described as follows. A panel control is dragged into the design form, and a table control is dragged into the panel from tooolbox. Add cells for the table through the properties. Now I cut a radio button, and click the table (note I can not select a cell), then right click Paste. The button is not in expected...
117
18545
by: phil-news-nospam | last post by:
Is there really any advantage to using DIV elements with float style properies, vs. the old method of TABLE and TR and TD? I'm finding that by using DIV, it still involves the same number of elements in the HTML to get everything just right. When you consider the class attribute on the DIV elements, there's not much size savings anymore for using DIV. There are other disadvantages to not using TABLE/TR/TD, such as the lack of ability...
3
536
by: anjee | last post by:
Hello, Is it possible to create multiple foreign keys on a field in a table from values in two separate tables where the field value can be from one table OR the other? For example, I have an Invoice table where the Customer field is linked (foreign key) to the Customer table. As the application has changed, I now want to introduce the concept of prospects by storing them in a table dedicated to prospects only (no customers). I want...
0
8867
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8740
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
9386
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, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9090
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
6685
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5996
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4764
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
2606
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2148
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.