32dd Oops - I got my initial database design wrong
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
Oops - I got my initial database design wrong

Just once in a while a question comes up on our Opentalk Forum that's so good and of such general interest that a longer answer is worthwhile. Such a question came up yesterday ... and elegantly asked and worded too, so it was a delight to read and answer.

You want a simple database application? Great - so you write the application using MySQL (or some other database) and you hold your data in a single table. Works well at first but then ... the design starts to creak at the seams. Perhaps you have a number of customers listed, and some of them make multiple purchases ... your database starts to contain a whole lot of repeated information which makes it hard to edit when someone changes their address, for example ...

[b]It's so easy to design a database in this way, but how can it be sorted out later?[/b] It's not going to be easy - but I've set down a scheme, with various options, and a piece of PHP to do the task automatically ... and you can find that in the forum archive

Beware - "normalising" your tables - changing from one table to two of more appropriate design - is likely to take you quite a while as you match up entries that aren't quite identical in their common fields but should be, and you're going to have to modify and add an element of complexity to your applications ... they'll have to update multiple tables rather than just one as data is being entered and changed, and they'll need to use MySQL Joins to connect the tables.
(written 2005-07-12, updated 2006-06-05)

 
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
S154 - MySQL - Designing an SQL Database System
  [3494] Databases - when to treat the rules as guidelines - (2011-10-23)
  [3361] Blowing our own trumpet - MySQL resources - (2011-07-18)
  [3270] SQL - Data v Metadata, and the various stages of data selection - (2011-04-29)
  [2749] Delegate Question - defining MySQL table relationships as you create the tables - (2010-05-02)
  [2204] Images in a database? How big is a database? (MySQL) - (2009-05-28)
  [2085] MySQL - licensing issues, even with using the name - (2009-03-16)
  [2053] What a difference a MySQL Index made - (2009-02-25)
  [1771] More HowTo diagrams - MySQL, Tomcat and Java - (2008-08-24)
  [1575] Database design for a shopping application (MySQL) - (2008-03-15)
  [1423] MySQL - table design and initial testing example - (2007-11-06)
  [945] Code quality counts - (2006-11-26)
  [937] Display an image from a MySQL database in a web page via PHP - (2006-11-22)
  [918] Databases needn't be frightening, hard or expensive - (2006-11-08)
  [666] Database design - get it right from first principles - (2006-04-02)
  [515] MySQL - an FAQ - (2005-12-03)
  [494] MySQL - a score of things to remember - (2005-11-12)
  [361] Binary Large Objects or bars - (2005-06-27)
  [59] MySQL - Pivot tables - (2004-09-22)

Q916 - Object Orientation and General technical topics - Database design principles
  [572] Giving the researcher power over database analysis - (2006-01-22)


52c6
Back to
Instant availability
Previous and next
or
Horse's mouth home
Forward to
What brings people to my web site?
Some other Articles
Getting the lighting right
A word of admiration for the London cabbie
A Strengthened City
What brings people to my web site?
Oops - I got my initial database design wrong
Instant availability
Vik, Iceland to Melksham, England
Time calculation in PHP
The training team that's looking out for you
From Iceland
4106 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2013: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/375_Oops ... wrong.html • PAGE BUILT: Mon May 27 06:13:46 2013 • BUILD SYSTEM: wizard
0