473,756 Members | 9,662 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Is this bad design?

Recently got to take over the responisibility for an application which
is making heavy use of an Access database. It has been a long time
since I came in contact with anything database related and I must admit
I have forgotten a lot of the theory and was hoping you could help me
out. I have found a couple of things in this database which to me seems
like bad design but there might be good reasons for doing things this
way, what do you think?

Bad design or ok?

Tables without primary key.

Tables with a generated primary key i.e. an id where a number of
attributes in the table could be used as to make up a composite primary
key.

Tables with no relation defined which are obviously related, i.e. a
couple of the tables have the same attributes but are not related. In
some cases a table contains the primary key of another table without
the tables beeing related.

Any input would be greatly appriciated.

Sep 19 '06 #1
3 1450

<Mo*********@gm ail.comwrote in message
news:11******** *************@d 34g2000cwd.goog legroups.com...
Recently got to take over the responisibility for an application which
is making heavy use of an Access database. It has been a long time
since I came in contact with anything database related and I must admit
I have forgotten a lot of the theory and was hoping you could help me
out. I have found a couple of things in this database which to me seems
like bad design but there might be good reasons for doing things this
way, what do you think?

Bad design or ok?

Tables without primary key.
IMO, If it is used to hold more than 1 record or is joined in a query that
is bad design. I have some tables which just hold titles or save selections
in which i dont define a PK.
>
Tables with a generated primary key i.e. an id where a number of
attributes in the table could be used as to make up a composite primary
key.
Bad design If I understood you. Like invoice# + customer in 1 field is used
as a PK that is terrible.
>
Tables with no relation defined which are obviously related, i.e. a
couple of the tables have the same attributes but are not related. In
some cases a table contains the primary key of another table without
the tables beeing related.
Many programmers are insistent on referential integrity so this would be bad
design. IMO this alone shouldn't codemn your previous programmer but in
conjuction with the other 2 things you said its bad design.
>
Any input would be greatly appriciated.
There will be no easy fixes. My suggestion is leave the bad db in place
while you create a new DB with proper PK's and relationships. Write a
import procedure for the old data. Update all his forms, queries, reports...
to the new DB structure. Make sure it works. Then import the data again. If
it works, then replace the back and front end together at the same time.

----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
Sep 19 '06 #2
Mo*********@gma il.com wrote in
news:11******** *************@d 34g2000cwd.goog legroups.com:
Recently got to take over the responisibility for an
application which is making heavy use of an Access database.
It has been a long time since I came in contact with anything
database related and I must admit I have forgotten a lot of
the theory and was hoping you could help me out. I have found
a couple of things in this database which to me seems like bad
design but there might be good reasons for doing things this
way, what do you think?

Bad design or ok?

Tables without primary key.

Tables with a generated primary key i.e. an id where a number
of attributes in the table could be used as to make up a
composite primary key.

Tables with no relation defined which are obviously related,
i.e. a couple of the tables have the same attributes but are
not related. In some cases a table contains the primary key of
another table without the tables beeing related.

Any input would be greatly appriciated.
There is plenty of debate about using autonumber primary keys.
Google for the pros and cons.

Relations can be created on the fly in the query builder and/or
SQL. Sometimes it's lazyness, sometimes it helps keep the
clutter down in the relationships window, and sometimes you
don't want to fight with a predefined relationship every time
you open a query. (e.g if you need inner, left and right joins
between the same two entities). You don't get Referential
Integrity that way, but if the RI is enforced by other
predefined relationships it's not a concern.

I personally only pre-define relationships where I want RI, and
just add them aas needed in the query when I don't need the RI.

--
Bob Quintal

PA is y I've altered my email address.

--
Posted via a free Usenet account from http://www.teranews.com

Sep 19 '06 #3
Thanks for your replys. You have been most helpful.

Sep 20 '06 #4

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

Similar topics

2
2115
by: adb | last post by:
I came up with a replication configuration that is basically the result of all the restrictions of replication as well as the restrictions of allowable software on work PC's and I was curious if anyone would point out any flaws or possible problems with the design. I'm limited to Access 2000 professional edition (Thus I cannot use indirect sync or internet sync) and cannot install anythird party controls (i.e.
3
4141
by: zlst | last post by:
Many technological innovations rely upon User Interface Design to elevate their technical complexity to a usable product. Technology alone may not win user acceptance and subsequent marketability. The User Experience, or how the user experiences the end product, is the key to acceptance. And that is where User Interface Design enters the design process. While product engineers focus on the technology, usability specialists focus on the user...
0
1915
by: Edward Diener | last post by:
In Borland's VCL it was possible to divide a component into design time and run time DLLs. The design time DLL would only be necessary when the programmer was setting a component's properties or events in the Object Inspector, the equivalent to the VS .NET Windows form designer. The run-time DLL would only contain the code necessary at run-time. The design time DLL referenced the run-time DLL, but not vice-versa. This allowed the run-time...
7
3017
by: Shimon Sim | last post by:
I have a custom composite control I have following property
2
2377
by: Paul Cheetham | last post by:
Hi, I have moved an application from VS2003 to VS2005, and I am now unable to view most of my forms in the designer. The majority of the forms in my project are derived from class PACForm, (which itself derives from System.Windows.Forms.Form) Whenever I try to open on of these forms in the designer, I get an error, stating it is unable to load one or more of the requested types. (Full text at the bottom of this message)
1
6341
by: Nogusta123 | last post by:
Hi, I have had a lot of problems getting web pages, master pages and content pages to render in VS2005 design view the same as they would in Internet Explorer. I did a lot of looking on the internet for answers but didn't have much luck. Anyway I believe I have found the causes of the problems and thought I should share them in case any one else is feeling the pain and also to find out what other peoples opinions are, on whether these...
0
2509
by: YellowFin Announcements | last post by:
Introduction Usability and relevance have been identified as the major factors preventing mass adoption of Business Intelligence applications. What we have today are traditional BI tools that don't work nearly as well as they should, even for analysts and power users. The reason they haven't reached the masses is because most of the tools are so difficult to use and reveal so little
19
3173
by: neelsmail | last post by:
Hi, I have been working on C++ for some time now, and I think I have a flair for design (which just might be only my imagination over- stretched.. :) ). So, I tried to find a design certification, possibly that involves C++, but, if not, C++ and UML. All I could find was Java + UML design certifications (one such is detailed on http://www.objectsbydesign.com/tools/certification.html). Although UML is expected to be language independent,...
10
3675
by: vital | last post by:
Hi, I am designing the middle tier of a project. It has 6 classes and microsoft application data access block. The six classes are DBServices, Logger, ProjectServices ... etc. and all these classes talk to front-end directly. Do I need to use any design pattern in this? or what kind of design pattern is this?
4
2467
by: Ken Fine | last post by:
I've been living with a frustrating issue with VS.NET for some months now and I need to figure out what the problem is. Hopefully someone has run into the same issue and can suggest a fix. I suspect some permissions problem. I'm running VS.NET 2008 in Vista. Symptoms and observations: * ASP.NET's native ImageMap and Image controls work just fine and provide a design-time preview of images that are referenced via the ImageUrl property *...
0
9482
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
9292
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
10062
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
9728
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
7282
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
6551
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
5322
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3827
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2694
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.