= Логички и физички дизајн - Креирање база податоци (со SQL DDL) == Фаза 2 - DDL, податоци, погледи === Ознаки * Со * се означени надворешни клучеви * Со !** се означени втори надворешни клучеви * Со !*** се означени трети надворешни клучеви * Примарните клучеви се подвлечени и болдирани === DDL скрипта за креирање на табелите Финалната DDL скрипта за креирање на шемата: * `schema_final.sql` [attachment:schema_dll_final.sql] ==== Број на податоци по табела [cols="2,1", options="header"] |=== | Табела | Број на записи | API_USER | 10,001,000 | CUSTOMER | 10,000,000 | CUSTOMER_LOYALTY | 10,000,000 | CUSTOMER_ORDER | 10,000,000 | REVIEW | 1,000,000 | ORDER_MEAL | 1,000,000 | ORDER_DRINK | 1,000,000 | API_ADMIN | 100 | DRIVER | 900 | COMPANY | 500 | COMPANY_ORDER | 1,000,000 | RESTAURANT | до 50 | CATEGORY | реални MealDB категории | INGREDIENT | реален MealDB/CocktailDB сет на состојки | ALERGEN | 14 | MEAL | 200 | DRINK | 100 | MEAL_INGREDIENT | зависно од увезените meal-ingredient врски | ALERGEN_INGREDIENT | зависно од совпаѓањето според имињата на состојките | CONTRACT | 200 | DELIVERY | 1,000,000 | LUNCH_TIME | 1,000 | INVOICE | 6,000 | ORDER_REVIEW | 700,000 | DELIVERY_REVIEW | 300,000 | CONTRACT_STATUS | 5 | CUSTOMER_LOYALTY_STATUS | 3 | DELIVERY_STATUS | 8 | ORDER_STATUS | 6 |=== ==== Извор на податоците * *RESTAURANT* – до 50 ресторани од реалниот dataset * *CATEGORY* – реални категории од MealDB * *INGREDIENT* – реален сет на состојки од MealDB/CocktailDB * *MEAL_INGREDIENT* – врски добиени од увезените податоци за оброците и состојките * *ALERGEN_INGREDIENT* – врски добиени преку совпаѓање на имињата на состојките * Останатите податоци се генерирани со реалистична распределба според очекуваното користење на апликацијата. ==== Скрипти за полнење на табелите * `data_final.sql` // Простор за поставување на data_final.sql === 2В: Погледи (Views) Потребно е да се направат три погледи (views) по член, така што тие подоцна реално ќе бидат користени од апликацијата. ==== View 1 // Простор за првиот view ## [source,sql] ## -- SQL код за View 1 ==== View 2 // Простор за вториот view ## [source,sql] ## -- SQL код за View 2 ==== View 3 // Простор за третиот view ## [source,sql] ## -- SQL код за View 3