Appearance
Opgaver - 1NF
Opgaverne er individuel og vi præsenterer løsninger i plenum.
Tid: 30 min.
Opgave 1
Students
| studentId | name | skills |
|---|---|---|
| 101 | Alice | Python, SQL |
| 102 | Bob | Java |
| 103 | Charlie | C++, Python |
- Identificér 1NF-bruddet
- Normalisér til 1NF (navngiv tabeller og nøgler)
- Indsæt nødvendige eksempelrækker til at bevise løsningen
Opgave 2
Customers
| customerId | name | phone1 | phone2 | phone3 |
|---|---|---|---|---|
| 1 | David | 12345678 | 87654321 | |
| 2 | Eva | 23456789 | ||
| 3 | Frank | 34567890 | 09876543 | 56789012 |
- Identificér 1NF-bruddet
- Design tabeller i 1nf (inkludér evt. telefontype)
- Foreslå nøgler og indsæt nødvendige eksempelrækker til at bevise løsningen
Opgave 3
Orders
| orderId | Customer | itemsJson |
|---|---|---|
| 5001 | Eva | [{"sku":"A1","qty":2},{"sku":"B2","qty":1}] |
| 5002 | Farid | [{"sku":"A1","qty":1},{"sku":"C3","qty":4,"note":"gift"}] |
- Identificér 1NF-bruddet
- Normalisér til 1NF (inkl. produkter)
- Angiv nøgler og indsæt nødvendige eksempelrækker til at bevise løsningen
Opgave 4
Employees
| employeeId | name | address |
|---|---|---|
| 7001 | Gitte | "Fjordvej 12, 5000 Odense C" |
| 7002 | Henrik | "Bakkevej 5, 8000 Aarhus C" |
- Identificér 1NF-bruddet
- Design 1NF-kompatibel løsning (feltniveau eller separat tabel |
- Angiv evt. nøgler og indsæt nødvendige eksempelrækker til at bevise løsningen