473,416 Members | 1,584 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,416 software developers and data experts.

general db design question

MP
context:
vb6 / ado / adox 2.8/ mdb file format / jet 4.0 provider (not using Access)

trying to design first database
I work for a very small company, detailing building 'components'

There is currently no database usage in our company.
On my own time I'm trying to learn database/ado so as to improve the way we
work.

My first database idea is to have two tables, tblJob and tblComponent
Each job is a building, each building contains Components, each Component
has information I need to track/collate/report on etc.

Currently all files related to a specific job are stored in a folder on
server by jobnumber
server / 2005 / 05001
server / 2005 / 05002
server / 2005 / 05003
etc

initially I envisioned a database for each jobnumber
so in 05001 there would be a file 05001.mdb and in 05002 there would be
05002.mdb
then for the 05001 job I can query the 05001 table and ask about components
on that job etc.

at this point that would be workable with my very small initial design
criteria ideas which are swimming around in my head trying to become
realized....

However, I can also see a larger world view where there would be one .mdb
for the company and each job would become an entry in a tableAllJobs in the
companywide.mdb file....

that would seem to make it easier to ask company wide questions, like how
many components existed in 2005, versus only being able to ask how many
components in job 05001 for example.

however at this point we don't ask any questions like that...

my thought was that as we got more sophisitcated? <g> in the future we might
want to ask broader questions of our data.

thinking that it's easier to set up the database right the first time rather
than add to it in the future as needs evolve...???

is there any reason to set up a company wide mdb rather than job specific
mdbs to allow for theoretical possible future queries even though I have no
immediate need for those kinds of queries at the present time?

any thoughts on which would be a better approach?

tia
Mark
Dec 13 '05 #1
5 1310
The single database for the company containing all the jobs is the
right way to go - after all the company has a one to many relationship
with the jobs that it does. It also has the same relationship with the
components it stocks and with the people it employs.

Personal experience with users is that even if you cannot think of a
reason for a sophisticated query at the stage you describe, someone
will ask for it eventually (usually your boss five minutes before a
crucial budget meeting).

The more time you spend on the design process before you even start the
job the better. The trouble is that without good guidance to begin with
you can tie yourself in some horrible knots. So.. start reading about
relational databse design.

One of the best descriptions of how to do this that I've found is in
Chapeer 1 of 'Beginning Access VBA' by Denise Gosnell. You don't have
to plan to program in VBA for this to be a good intro to the basics.

Good luck with the project.

Dec 13 '05 #2

"MP" <no****@Thanks.com> wrote in message
news:in****************@tornado.rdc-kc.rr.com...
context:
vb6 / ado / adox 2.8/ mdb file format / jet 4.0 provider (not using
Access)

trying to design first database
I work for a very small company, detailing building 'components'

There is currently no database usage in our company.
On my own time I'm trying to learn database/ado so as to improve the way
we
work.

My first database idea is to have two tables, tblJob and tblComponent
Each job is a building, each building contains Components, each Component
has information I need to track/collate/report on etc.

Currently all files related to a specific job are stored in a folder on
server by jobnumber
server / 2005 / 05001
server / 2005 / 05002
server / 2005 / 05003
etc

initially I envisioned a database for each jobnumber
so in 05001 there would be a file 05001.mdb and in 05002 there would be
05002.mdb
then for the 05001 job I can query the 05001 table and ask about
components
on that job etc.

at this point that would be workable with my very small initial design
criteria ideas which are swimming around in my head trying to become
realized....

However, I can also see a larger world view where there would be one .mdb
for the company and each job would become an entry in a tableAllJobs in
the
companywide.mdb file....

that would seem to make it easier to ask company wide questions, like how
many components existed in 2005, versus only being able to ask how many
components in job 05001 for example.

however at this point we don't ask any questions like that...

my thought was that as we got more sophisitcated? <g> in the future we
might
want to ask broader questions of our data.

thinking that it's easier to set up the database right the first time
rather
than add to it in the future as needs evolve...???

is there any reason to set up a company wide mdb rather than job specific
mdbs to allow for theoretical possible future queries even though I have
no
immediate need for those kinds of queries at the present time?

any thoughts on which would be a better approach?

tia
Mark


I agree with Geoff. I don't think there is any single reason of having
multiple DBs, even at the beginning of development. In reality, it just
complicate development, rather than simplify it.
Some reasons of having one DB:
1. Less space required (depending on number of jobs the difference can be
huge)
2. It is more logical and thus more maintainable
3. It is more flexible (as you mention it will you more ways of using data,
which otherwise would be much more complex)
4. Combining multiple DBs into one in the future may become a project by
itself.
5. Development is easier (at least, after you get some general idea on DB
design and SQL language)
6. You have to control, maintain and troubleshoot much less number of
objects, which pays for itself over time.. You have less trouble in case you
need to relocate entire system.
7. Depending on your design, it may take much less resources during
execution (memory, bandwidth).
8. And so on.

And, as I said, I don't have any reason to support multiple DB, unless there
are some additional and unsaid requirements.

Starting with inappropriate concept may lead to expensive problems - spend
some time on studying, as suggested, before starting the project.

Dmitriy.
Dec 13 '05 #3
MP
"Dmitriy Antonov" <an*********@netzero.net_NOT_FOR_SPAM> wrote in message
news:e6**************@TK2MSFTNGP15.phx.gbl...

"MP" <no****@Thanks.com> wrote in message
news:in****************@tornado.rdc-kc.rr.com...
context:
vb6 / ado / adox 2.8/ mdb file format / jet 4.0 provider (not using
Access)

Starting with inappropriate concept may lead to expensive problems - spend
some time on studying, as suggested, before starting the project.

Dmitriy.

Thank you both.
I will go with your mutual suggestion.
I have been spending as much time as I can on studying and this is part of
that process.
(Dmitriy may recall answering several of my previous questions over the past
month)

At some point soon, I need to stop studying and start doing!
:-)

fwiw some of the resources I've been consuming:

Fundamental Microsoft Jet SQL for Access 2000
Acey James Bunch

Data Modeling As Part of Database Design

Universal Data Access Using ADO

FundamentalsOfRelationalDatabaseDesign

Database Normalization Tips
by Luke Chung

http://www.w3schools.com/ado/default.asp
http://www.able-consulting.com
http://www.bkent.net
http://www.devguru.com/Technologies/...ado_intro.html
http://msdn.microsoft.com/library/de...isualbasic.asp
http://msdn.microsoft.com/library/de...mmersguide.asp
http://msdn.microsoft.com/library/de...dlexamples.asp
http://www.vbexplorer.com/VBExplorer...sample1061.asp
http://www.vbexplorer.com/VBExplorer...er_ADO_DAO.asp
http://www.vbexplorer.com/VBExplorer...y/simpledb.asp
http://msdn.microsoft.com/library/de...dooverview.asp
a programmer's guide and reference.
http://makeashorterlink.com/?S33A25952
http://www.able-consulting.com/ADO_Conn.htm
http://www.devguru.com/Technologies/...ado_intro.html
http://www.able-consulting.com/ADO_Faq.htm
http://www.able-consulting.com/tech.htm
ADO Tutorial For Absolute Beginners
http://www.planet-source-code.com/vb...12050&lngWId=1
ADO Tutorial:
http://www.xtremevbtalk.com/showthread.php?t=66994
ADO Reference Guide:
http://www.devguru.com/technologies/ado/home.asp
Migrating from DAO to ADO (good document for ADO code snippets):
http://msdn.microsoft.com/library/de...l/daotoado.asp
ADO Connection Strings (Carl Prothman):
http://www.carlprothman.net/Default.aspx?tabid=81
Connection Strings:
http://www.connectionstrings.com

and several hundred related posts on the various ngs.
:-)
Dec 13 '05 #4
How about loooking through Database Design for Mere Mortals, by Michael
Hernandez. Plain English, and not tied to any particular database.
But a good grounding in what makes for good databases and what causes
bad ones.

Dec 13 '05 #5
MP
<pi********@hotmail.com> wrote in message
news:11*********************@g49g2000cwa.googlegro ups.com...
How about loooking through Database Design for Mere Mortals, by Michael
Hernandez. Plain English, and not tied to any particular database.
But a good grounding in what makes for good databases and what causes
bad ones.


Thanks for the ref, I'll look for it.
Mark
Dec 13 '05 #6

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

Similar topics

1
by: Steven O. | last post by:
I am basically a hobbyist programmer, at the moment doing a little work experimenting with some AI stuff. I learned C++, and then tried to teach myself MFC using MS Visual C++ 6.0. I swore off of...
2
by: kneejerkreaction | last post by:
I did not know where else to post this since there is no forum for general OOP questions. I am just getting into OOP after a lifetime of procedural programming. I'm developing a Help Desk Ticketing...
21
by: Litron | last post by:
Appologies, this isn't really a javascript specific question.... Just wondering what the current size standard is for web-page design... it used to be 800 x 600 pxls (which seems quite small...
3
by: Lauren Quantrell | last post by:
A general design question: Assuming I can figure out a way to link some local tables in an .MDB file to my Access2000 .ADP database (any help on this is appreciated as well), I'm wondering which...
3
by: JezB | last post by:
What's the generally accepted approach for using Styles and Stylesheets in a web application based on .aspx files, Web Controls, User Controls, and code-behind modules (c# in my case)? Most style...
105
by: Christoph Zwerschke | last post by:
Sometimes I find myself stumbling over Python issues which have to do with what I perceive as a lack of orthogonality. For instance, I just wanted to use the index() method on a tuple which does...
1
by: code3_brent | last post by:
Moving from VB6 to VB.NET or C# and had a general design question... I currently have a VB6 app that functions like a wizard. Form1 is displayed with configuration settings. The user enters the...
1
by: Tim | last post by:
Dear All, In my opinion, there are so many possible designs for a project, even small up to a class. How can I know which one is better? Is there any important point I should consider in the...
40
by: RvGrah | last post by:
I've been writing in C# for about 4 years now, coming from VB.net and VB6 before that, in which I know I'm not alone. I found learning C#, at least to the extent that I use it in developing...
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
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:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
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,...
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
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
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...

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.