click below
click below
Normal Size Small Size show me how
INFO MANAGEMNET L7
Database Normalization and Design
| Question | Answer |
|---|---|
| A table stores data in rows (records) and columns (attributes) | Database Table |
| process of evaluating and correcting table structures to minimize data redundancies. Works through a series of stages called Normal Forms (NF) | Normalization |
| is the process of breaking big, messy tables into smaller, well-organized tables. | Normalization |
| Each table represents a single subject; one table should focus on one real-world entity only No data item should be unnecessarily stored in more than one table | Key Principles of Normalization |
| cannot add data because other data is missing | Insertion anomaly |
| must update the same data in multiple rows | Update anomaly |
| deleting data accidentally removes important information | Deletion anomaly |
| No repeating groups. Each field contains atomic (single) values | First Normal Form (1NF) |
| Must be in 1NF All non-key attributes must depend on the entire primary key | Second Normal Form (2NF) |
| Must be in 2NF, No transitive dependency | Third Normal Form (3NF) |
| unique, never null, rarely change | Evaluate Primary Key (PK) Assignments |
| clear, consistent, and meaningful names for Tables and Columns. | Evaluate Naming Conventions |
| each column should store only one piece of information. | Refine Attribute Atomicity |
| design for current needs, but be mindful of future growth. | Identify New Attributes |
| look for hidden relationships between tables | Identify New Relationships |
| databases should tell the story of the past, not just the present. | Maintain Historical Accuracy |
| values that can be calculated from other data (age, total). | Evaluate using Derived Attributes |
| If a table does more than one job, split it | One table is for one main purpose |
| System-generated key (id, _id, objectId) Has no real-world meaning | Surrogate Key Considerations |
| Stricter version of 3NF | BCNF |
| handle complex multi-valued dependencies | 4NF / 5NF |
| Joining the larger number of tables reduces system speed. | Denormalization |