Changes between Version 1 and Version 2 of DatabaseProgramming


Ignore:
Timestamp:
06/16/26 11:04:15 (17 hours ago)
Author:
231118
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DatabaseProgramming

    v1 v2  
    1919* Излез: број на лајкови
    2020
    21 === get_recipe_average_rating ===
     21=== get_total_recipes_by_cuisine ===
    2222
    23 Ја пресметува просечната оцена на избран рецепт.
     23Го пресметува бројот на рецепти за избран тип на кујна.
    2424
    25 * Влезен параметар: `p_recipe_id`
    26 * Излез: просечна оцена
    27 
    28 === get_recipe_favorites_count ===
    29 
    30 Го враќа бројот на корисници кои го имаат додадено рецептот во омилени.
    31 
    32 * Влезен параметар: `p_recipe_id`
    33 * Излез: број на омилени
     25* Влезен параметар: `p_cuisine_id`
     26* Излез: број на рецепти
    3427
    3528=== get_total_recipes_by_category ===
     
    3831
    3932* Влезен параметар: `p_category_id`
    40 * Излез: број на рецепти
    41 
    42 === get_total_recipes_by_cuisine ===
    43 
    44 Го пресметува бројот на рецепти за избран тип на кујна.
    45 
    46 * Влезен параметар: `p_cuisine_id`
    4733* Излез: број на рецепти
    4834
     
    117103== Тригери ==
    118104
    119 Тригерите автоматски се активираат при INSERT или UPDATE операции и обезбедуваат валидација и интегритет на податоците.
     105Тригерите автоматски се активираат при INSERT операции и обезбедуваат автоматско пополнување на временски ознаки.
    120106
    121 === trg_validate_recipe_name ===
    122 
    123 Табела: `recipe`
    124 
    125 Проверува дали името на рецептот е внесено и не е празно.
    126 
    127 === trg_validate_recipe_calories ===
    128 
    129 Табела: `recipe`
    130 
    131 Проверува дали бројот на калории е поголем или еднаков на нула.
    132 
    133 === trg_validate_review_rating ===
    134 
    135 Табела: `recipe_review`
    136 
    137 Проверува дали оцената е во опсег од 1 до 5.
    138 
    139 === trg_validate_recipe_review_attempt ===
    140 
    141 Табела: `recipe_review`
    142 
    143 Не дозволува оставање рецензија доколку корисникот претходно не го пробал рецептот.
    144 
    145 === trg_validate_forum_comment ===
     107=== trg_set_comment_created_at ===
    146108
    147109Табела: `forumpost_comment`
    148110
    149 Проверува дали содржината на коментарот е валидна и не е празна.
    150 
    151 === trg_prevent_duplicate_favorite ===
    152 
    153 Табела: `recipe_favorite`
    154 
    155 Спречува додавање на ист рецепт повеќе од еднаш во омилени.
    156 
    157 === trg_prevent_duplicate_forumpost_like ===
    158 
    159 Табела: `forumpost_like`
    160 
    161 Спречува двојно лајкнување на форум пост.
    162 
    163 === trg_prevent_duplicate_recipe_dislike ===
    164 
    165 Табела: `recipe_dislike`
    166 
    167 Спречува двојно додавање dislike за ист рецепт.
     111Автоматски го поставува полето `created_at` при креирање на нов коментар доколку вредноста не е внесена.
    168112
    169113=== trg_set_forumpost_created_at ===
     
    171115Табела: `forumpost`
    172116
    173 Автоматски го поставува полето `created_at` при креирање на нов форум пост.
    174 
    175 === trg_set_comment_created_at ===
    176 
    177 Табела: `forumpost_comment`
    178 
    179 Автоматски го поставува полето `created_at` при креирање на нов коментар.
     117Автоматски го поставува полето `created_at` при креирање на нов форум пост доколку вредноста не е внесена.
    180118
    181119=== trg_set_recipe_attempt_time ===
     
    183121Табела: `recipe_attempt`
    184122
    185 Автоматски го поставува времето на подготвување во полето `attempted_at`.
     123Автоматски го поставува времето на подготовка во полето `attempted_at` при внесување нов запис.
    186124
    187125== Заклучок ==
     
    189127Во системот се имплементирани:
    190128
    191 * 7 кориснички функции
     129* 5 кориснички функции
    192130* 9 процедури
    193 * 11 тригери
     131* 3 тригери
    194132
    195 Овие механизми овозможуваат автоматска валидација на податоците, спречување на дупликати, автоматско пополнување на временски ознаки и обезбедување на конзистентност и интегритет на податоците во базата.
     133Овие механизми овозможуваат централизирано извршување на бизнис логиката, автоматско пополнување на временски ознаки, спречување на дупликати и одржување на интегритетот на податоците во базата.