Video summary
Perancangan Basis Data
Main summary
Key takeaways
Main ideas / lessons conveyed
The video continues a database normalization case study (Case Study 3), moving from 1NF/2NF into 2NF and then BCNF (Boyce–Codd Normal Form).
Key focus:
- 2NF: separate single-value attributes (single data group) from multivalue/repeating attributes (multivalue group).
- BCNF: remove transitive dependencies—dependencies where a non-key attribute depends on another non-key attribute (directly/indirectly through other attributes), which is not allowed under BCNF.
Final output: after applying 2NF and BCNF, the discussion produces 5 relational tables, grouped as:
- 3 master tables (relatively stable)
- 2 transaction tables (represent transactions such as invoices/sales and their line items)
Detailed method / step-by-step normalization instructions (as presented)
A) 2NF Normalization (Second Form)
-
Identify which attributes are single-valued vs. multivalued
- Single data group: attributes that appear only once per record/note (example list provided):
- Invoice number
- Buyer ID
- Buyer name
- DP (provided as “DP amount/DP”)
- Due date
- Cashier ID
- Cashier name
- Multivalue / repeated data group: attributes that can appear multiple times per invoice/note (example list provided):
- Item code
- Item name
- Quantity (number of items)
- Unit price
- Single data group: attributes that appear only once per record/note (example list provided):
-
Split into two tables
- Table 1 (single data / header table)
- Primary key: Invoice number
- Other attributes: Buyer ID, Buyer name, DP, due date, cashier ID, cashier name (as described)
- Table 2 (multivalue / detail table)
- Formed using the primary key from Table 1 (Invoice number) plus the multivalue key attribute
- Composite primary key: (Invoice number, Item code)
- Other attributes: Item name, quantity, unit price
- Table 1 (single data / header table)
-
Result
- After 2NF: 2 tables exist.
B) BCNF Normalization (Eliminate Transitive Dependencies)
-
Find and remove transitive dependencies in the 2NF tables
- Transitive dependency described as: an attribute depends on a non-key attribute, which itself depends on the key.
-
From the invoice/header side (first table in 2NF)
- Buyer name depends on Buyer ID, while Buyer ID depends on Invoice number.
- Remove buyer name from the invoice table
- Create/ensure a separate buyer table keyed by Buyer ID
- Cashier name depends on Cashier ID, while Cashier ID depends on Invoice number.
- Remove cashier name from the invoice table
- Create/ensure a separate cashier table keyed by Cashier ID
- DP, due date, note date are described as depending on invoice number (kept as part of the invoice/sales transaction data).
- Buyer name depends on Buyer ID, while Buyer ID depends on Invoice number.
-
From the invoice detail side (second table in 2NF)
- Product name depends on Product code, while Product code depends on Invoice number.
- Remove product name from the invoice-detail table
- Create/ensure a separate product/item table keyed by Item/Product code
- Product name depends on Product code, while Product code depends on Invoice number.
-
Result
- After BCNF: 5 tables are produced.
Final schema outcome (5 relational tables) and how they’re grouped
The video states the BCNF result is five relational tables conceptually:
1) Master tables (3 tables; relatively stable)
- Buyer table
- attributes mentioned: Buyer ID, Buyer name
- Cashier table
- attributes mentioned: Cashier ID, Cashier name
- Item/Product table
- attributes mentioned: Product/Item code, Item/Product name
2) Transaction tables (2 tables; represent sales/invoices)
- Invoice/Sales table
- attributes mentioned: Invoice number (key), DP, note date, due date (as described)
- Invoice Detail table
- described as line items for transactions
- relates invoice to purchased goods (composite key implied previously as Invoice number + Item code)
- contains: item quantity and unit price (and item code)
The video also gives an example visualization of contents:
- Buyers: “Dinda” and “Ahmad” (example)
- Cashier: “Anggun” (example)
- Items: four item entries (example), each with an item code and item name
- Invoices: two invoices (example) with DP date and due date
- Detail table: shows transaction details of items bought
Speakers / sources featured
- No specific named external sources.
- Main speaker: the course instructor/lecturer (not identified by name in the subtitles).