| Version 4 (modified by , 11 days ago) ( diff ) |
|---|
Нормализација
Денормализирана форма
Форма во кој има една табела во која се внесени сите ентитети и нивни релации помеѓу себе, без никакви правила
| user_id | user_name | password | transaction_account_id | account_name | balance | transaction_id | transaction_name | amount | net_amount | date | transaction_breakdown_id | spent_amount | earned_amount | tag_id | tag_name | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | james | james@… | $2y$10$rcqLdIzMcYfmGFWCP3kix.JNTOzjIp0xVehMd11wzaanAXUDFLQMu | 1, 2 | credit card, cash | .+5000, +1200 | 1, 2 | electricity bill, burger | -1800, -800 | -1800, -200 | 18:03:25 Sep 26, 2025, 12:43:00 Sep 26, 2025 | 1,2 | -1800, -800 | 0, +600 | 1, 2 | bills, food |
| 2 | anita | anita@… | $2y$10$CsSsqA.FFhBR/TWCZCUWYOPxYA.HmGb7ULQPgJGhv3vQS2xRqluYm | 1 | debit card | +3200 | 1 | nail polish | -200 | -200 | 19:31:32 Sep 12 2025 | 1 | -200 | 0 | 1 | beauty |
Прва нормална форма
Форма во која повторно има една табела, но овојпат, таа е ограничена со следниве работи:
- Подредувањето на редовите не претставува никакво значење
- Во ќелиите на секоја колона има по една вредност
- Не се мешаат типови на податоци во една ќелија
- Табелата има примарен клуч(user_id)
- Нема повторувачки групи, сите што биле во денормализираната форма сега се во посебен ред
| user_id | user_name | password | transaction_account_id | account_name | balance | transaction_id | transaction_name | amount | net_amount | date | transaction_breakdown_id | spent_amount | earned_amount | tag_id | tag_name | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | james | james@… | $2y$10$rcqLdIzMcYfmGFWCP3kix.JNTOzjIp0xVehMd11wzaanAXUDFLQMu | 1 | credit card | +5000 | 1 | electricity bill | -1800 | -1800 | 18:03:25 Sep 26, 2025 | 1 | -1800 | 0 | 1 | bills |
| 1 | james | james@… | $2y$10$rcqLdIzMcYfmGFWCP3kix.JNTOzjIp0xVehMd11wzaanAXUDFLQMu | 2 | cash | +1200 | 2 | burger | -800 | -200 | 12:43:00 Sep 26, 2025 | 2 | -800 | +600 | 2 | food |
| 2 | anita | anita@… | $2y$10$CsSsqA.FFhBR/TWCZCUWYOPxYA.HmGb7ULQPgJGhv3vQS2xRqluYm | 3 | debit card | +3200 | 3 | nail polish | -200 | -200 | 19:31:32 Sep 12 2025 | 3 | -200 | 0 | 3 | beauty |
Втора нормална форма
Форма во која секој атрибут добива своја табела и релациите помеѓу нив се претставени со надворешни клучеви, притоа следејќи го ова правило:
- Секој од атрибутите кој не е клуч, зависи од целосниот примарен клуч - со тоа се спречуваат аномалии на внесување, бришење и менување
| USER | |||
|---|---|---|---|
| user_id | user_name | password | |
| 1 | james | james@… | $2y$10$rcqLdIzMcYfmGFWCP3kix.JNTOzjIp0xVehMd11wzaanAXUDFLQMu |
| 2 | anita | anita@… | $2y$10$CsSsqA.FFhBR/TWCZCUWYOPxYA.HmGb7ULQPgJGhv3vQS2xRqluYm |
| TRANSACTION_ACCOUNT | |||
|---|---|---|---|
| transaction_account_id | account_name | balance | user_id |
| 1 | credit card | +5000 | 1 |
| 2 | cash | +1200 | 1 |
| 3 | debit card | +3200 | 2 |
| FK |
| TRANSACTION | ||||
|---|---|---|---|---|
| transaction_id | transaction_name | amount | net_amount | date |
| 1 | electricity bill | -1800 | -1800 | 18:03:25 Sep 26, 2025 |
| 2 | burger | -800 | -200 | 12:43:00 Sep 26, 2025 |
| 3 | nail polish | -200 | -200 | 19:31:32 Sep 12 2025 |
| TRANSACTION_BREAKDOWN | ||||
|---|---|---|---|---|
| transaction_breakdown_id | transaction_id | transaction_account_id | spent_amount | earned_amount |
| 1 | 1 | 1 | -1800 | 0 |
| 2 | 2 | 2 | -800 | +600 |
| 3 | 3 | 3 | -200 | 0 |
| FK | FK |
| TAG | |
|---|---|
| tag_id | tag_name |
| 1 | bills |
| 2 | food |
| 3 | beauty |
| TAG_ASSIGNED_TO_TRANSACTION | |
|---|---|
| transaction_id | tag_id |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| FK | FK |
Трета нормална форма
Note:
See TracWiki
for help on using the wiki.
