Changes between Version 5 and Version 6 of RelationalDesign


Ignore:
Timestamp:
09/13/26 21:33:02 (2 weeks ago)
Author:
223162
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RelationalDesign

    v5 v6  
    22
    33== Фаза 2 - DDL, податоци, погледи
    4 
    5 Оваа фаза почнувате да ја работите откако финалниот ЕР дијаграм ќе ви биде одобрен и од асистент и од професор.
    6 
    7 === 2А: DDL за изработениот ЕР дијаграм
    8 
    9 Генериран е DDL за изработениот ЕР дијаграм. Задолжително се проверени сите податочни типови, ограничувања и клучеви.
    10 
    11 Додадени се дополнителни ограничувања, проверки и дефолтни вредности секаде каде што е потребно, со цел да се обезбеди интегритет и конзистентност на податоците.
    124
    135=== Ознаки
    … …  
    1810* Примарните клучеви се подвлечени и болдирани
    1911
    20 === Табели
    21 
    22 ==== Ентитети
    23 
    24 ADMIN(admin_id, admin_name, admin_email, admin_password)
    25 
    26 API_USER(api_user_id, username, password, role)
    27 
    28 COMPANY(company_id, company_name, company_email, company_phone, company_address)
    29 
    30 CONTRACT_STATUS(contract_status_id, status_name)
    31 
    32 ORDER_STATUS(order_status_id, status_name)
    33 
    34 DELIVERY_STATUS(delivery_status_id, status_name)
    35 
    36 LOYALTY_TIER(loyalty_tier_id, tier_name, min_points, discount_percent)
    37 
    38 CUSTOMER_LOYALTY_STATUS(customer_loyalty_status_id, status_name)
    39 
    40 INGREDIENT(ingredient_id, ingredient_name)
    41 
    42 ALERGEN(alergen_id, alergen_name)
    43 
    44 CATEGORY(category_id, category_name)
    45 
    46 LUNCH_TIME(lunch_time_id, lunch_name, start_time, end_time)
    47 
    48 REVIEW(review_id, customer_id*, review_text, rating)
    49 
    50 * референцира до CUSTOMER (customer_id)
    51 
    52 RESTAURANT(rest_id, rest_name, rest_location, rest_website, rest_phone, rest_email, company_id*)
    53 
    54 * референцира до COMPANY (company_id)
    55 
    56 CUSTOMER(customer_id, first_name, last_name, email, phone, address, password)
    57 
    58 DRIVER(driver_id, first_name, last_name, phone, vehicle_info, company_id*)
    59 
    60 * референцира до COMPANY (company_id)
    61 
    62 CONTRACT(contract_id, company_id*, contract_status_id**, contract_start_date, contract_end_date, contract_value)
    63 
    64 * референцира до COMPANY (company_id)
    65 
    66 ** референцира до CONTRACT_STATUS (contract_status_id)
    67 
    68 CUSTOMER_LOYALTY(customer_loyalty_id, points, customer_id*, loyalty_tier_id**, customer_loyalty_status_id***)
    69 
    70 * референцира до CUSTOMER (customer_id)
    71 
    72 ** референцира до LOYALTY_TIER (loyalty_tier_id)
    73 
    74 *** референцира до CUSTOMER_LOYALTY_STATUS (customer_loyalty_status_id)
    75 
    76 MEAL(meal_id, meal_name, meal_price, meal_description, rest_id*, category_id**, lunch_time_id***)
    77 
    78 * референцира до RESTAURANT (rest_id)
    79 
    80 ** референцира до CATEGORY (category_id)
    81 
    82 *** референцира до LUNCH_TIME (lunch_time_id)
    83 
    84 DRINK(drink_id, drink_name, drink_price, rest_id*)
    85 
    86 * референцира до RESTAURANT (rest_id)
    87 
    88 CUSTOMER_ORDER(order_id, order_date, total_amount, customer_id*, rest_id**, order_status_id***)
    89 
    90 * референцира до CUSTOMER (customer_id)
    91 
    92 ** референцира до RESTAURANT (rest_id)
    93 
    94 *** референцира до ORDER_STATUS (order_status_id)
    95 
    96 DELIVERY(delivery_id, delivered_at, order_id*, driver_id**, delivery_status_id***)
    97 
    98 * референцира до CUSTOMER_ORDER (order_id)
    99 
    100 ** референцира до DRIVER (driver_id)
    101 
    102 *** референцира до DELIVERY_STATUS (delivery_status_id)
    103 
    104 ORDER_REVIEW(order_review_id, order_id*, review_id**)
    105 
    106 * референцира до CUSTOMER_ORDER (order_id)
    107 
    108 ** референцира до REVIEW (review_id)
    109 
    110 DELIVERY_REVIEW(delivery_review_id, delivery_id*, review_id**)
    111 
    112 * референцира до DELIVERY (delivery_id)
    113 
    114 ** референцира до REVIEW (review_id)
    115 
    116 INVOICE(invoice_id, issued_at, amount, order_id*)
    117 
    118 * референцира до CUSTOMER_ORDER (order_id)
    119 
    120 COMPANY_ORDER(company_order_id, company_id*, order_id**)
    121 
    122 * референцира до COMPANY (company_id)
    123 
    124 ** референцира до CUSTOMER_ORDER (order_id)
    125 
    126 ==== Релациски табели
    127 
    128 MEAL_INGREDIENT(meal_id*, ingredient_id**)
    129 
    130 * референцира до MEAL (meal_id)
    131 
    132 ** референцира до INGREDIENT (ingredient_id)
    133 
    134 ALERGEN_INGREDIENT(alergen_id*, ingredient_id**)
    135 
    136 * референцира до ALERGEN (alergen_id)
    137 
    138 ** референцира до INGREDIENT (ingredient_id)
    139 
    140 ORDER_MEAL(order_id*, meal_id**, quantity)
    141 
    142 * референцира до CUSTOMER_ORDER (order_id)
    143 
    144 ** референцира до MEAL (meal_id)
    145 
    146 ORDER_DRINK(order_id*, drink_id**, quantity)
    147 
    148 * референцира до CUSTOMER_ORDER (order_id)
    149 
    150 ** референцира до DRINK (drink_id)
    15112
    15213=== DDL скрипта за креирање на табелите
    … …  
    15617* `schema_final.sql`
    15718
    158 // Простор за поставување на schema_final.sql
    159 
    160 '''
    161 
    162 === 2Б: Полнење на табелите со податоци
    163 
    164 Потребно е табелите да бидат наполнети со реалистични податоци. Неколку табели содржат повеќе од еден милион редици, а големината на табелите е избрана така што го одразува реалното користење на апликацијата.
    165 
    166 Податоците се генерирани и увезени од реални податочни извори каде што е соодветно.
    16719
    16820==== Број на податоци по табела