Discussion
Last updated on 2024-09-11 | Edit this page
Proposed Episode on Database Design
Q & A on Database Design (review if time)
- Order doesn’t matter
- Every row-column combination contains a single atomic value, i.e., not containing parts we might want to work with separately.
- One field per type of information
- No redundant information
- Split into separate tables with one table per class of information
- Needs an identifier in common between tables – shared column - to reconnect (foreign key).
Naming
-
Naming conventions are important because:
- Names are used more than once
- Names are not usually subject to change (for example, spelling errors)
Names should uniquely identify what the data is representing
Names should be descriptive and familiar
-
Names should adhere to certain standards (general tips):
- Names should not contain spaces (for example, nameofdata)
- Names should not start with numbers, rather add numbers at the end of the name (for example, name5)
- Names should be full words, not abbreviations (for example, doctor)
- Underscores can separate words (for example, name_of_data)
- Data types are not names (for example, integer_data instead of integer)
- Names are often in lowercase (for example, name)
- Do not use quotes when naming a table or field
Other database management systems
-
Access or Filemaker Pro
- GUI
- Forms w/QAQC
- But not cross-platform
-
MySQL/PostgreSQL
- Multiple simultaneous users
- More difficult to setup and maintain
-
Microsoft SQL Server (SQL Server)
- Multiple simultaneous users
- Easy to use
- Most complex part is development and troubleshooting
-
MongoDB (for Big Data needs)
- Easy to scale
- Performance is good since it is equipped to work with big data