== **[[span(style=color: #BF1B1B, ER дијаграм и податочни побарувања)]]** == **[[span(style=color: #BF1B1B, Актуелен ER дијаграм (верзија 2 ) )]]** [[Image("Version 3.png")]] == **[[span(style=color: #BF1B1B, Ентитети)]]** **subject_at_term** - ентитет кој дефинира предмет во семестар (слаб кон term) • term_subject_id - нумерички тип (парцијален клуч ) • subject_name - текстуален тип **school_year** – ентитет во кој дефинира школска година (слаб кон student) • starting_year - нумерички тип (парцијален клуч) • finishing_year - нумерички тип (парцијален клуч) **professor** - ентитет во кој се чуваат информации за професорот • professor_id - нумерички тип (генерален клуч) • p_first_name - текстуален тип • p_last_name - текстуален тип • role - текстуален тип **term** - ентитет кој се чуваат информации за семестарот (слаб кон school_year) • term_type - текстуален тип (парцијален клуч) • term_start_date – тип датум • term_end_date – тип датум **subject_book** – ентитет кој чува информации за книга која се користи по некој предмет • book_id - нумерички тип (генерален клуч) • year_of_publishment - нумерички тип • book_title - текстуален тип • book_edition - текстуален тип **chapter** – ентитет во кој се дефинираат информации за поглавјето (слаб кон subject_book) • chapter_number - нумерички тип (парцијален клуч) • chapter_title - текстуален тип **author** – ентитет за информација за авторот • author_id – нумерички тип (генерален клуч) • author_name - текстуален тип **repeating_event** – ентитет за во кој се дефинираат повотрувачки настани (дисјунктивен наследник од calendar_event) • starting_date – тип датум • ending_date – тип датум • repet_every_n_weeks - нумерички тип • event_week_day - текстуален тип **non_repeating_event** - ентитет за во кој се дефинираат неповотрувачки настани (дисјунктивен наследник од calendar_event) • event_date – тип датум **task** – Ентитет што означува работна задача • task_id - нумерички тип (примарен клуч) • task_priority - нумерички тип • is_done – бинарен тип • task_date – тип датум • task_name – текстуален тип • description – долг текстуален тип **student** - Ентитет што ќе се чува податоци за студентите • student_id - нумерички тип (примарен клуч) • username- текстуален тип • s_first_name- текстуален тип • s_last_name- текстуален тип • password- текстуален тип **e-mail** - Ентитет во кој ќе се чуваат повеќе податоци за е-мајлови на студентот (слаб кон student) • e-mail_id - нумерички тип (парцијален клуч) • e-mail_adress- текстуален тип **dashboard** – Ентитет во кој ќе се чуваат дашборди за повеќе датуми (слаб кон student) • dashboard_id- нумерички тип (парцијален клуч) **notes** – Ентитет во кој ќе се чуваат забелешки (слаб кон dashboard) • note_id- нумерички тип (парцијален клуч) • note_date - тип датум • note_text текстуален тип **feedback** – Ентитет во кој ќе се чува фидбек (слаб кон student) • fb_id- нумерички тип (парцијален клуч) • fb_date – тип датум • fb_title – текстуален тип • fb_rating – нумерички тип • fb_discription – нумерички тип **place** – Ентитет во кој ќе се чува точната локација • place_id - нумерички тип (примарен клуч) • room_name - текстуален тип • building_name – текстуален тип **reminder** – Ентитет за потсетник • r_id - нумерички тип (примарен клуч) • r_flag – бинарен тип • minutes_before_event нумерички тип **calendar_event** – Ентитет за календарски настан • calendar_event_id - нумерички тип (примарен клуч) • event_start_time - нумерички тип • event_end_time - нумерички тип • event_type - нумерички тип • event_name - текстуален тип • event_description - текстуален тип == **[[span(style=color: #BF1B1B, Релации)]]** • **year_has_subject** 1-N релација помеѓу school_year – subject. За една година има повеќе предмети а за секој предмет има една година. • **contains_terms** 1-N релација помеѓу school_year – term Слаба релација. За еден семестар има повекје школски години, а за една школска гидина има еден семстар. • **term_has_subject** 1-N релација помеѓу term – subject_at_term Слаба релација. За еден семестар има повекје предмети а за секој предмет има еден семестар. • **recommended_book** M-N релација помеѓу subject_at_term – subject_book За секоја препорачана книга има повекје предмети во семестар а и за секој оредмет во семестар има повеќе препорачани книги. • **holds_subject** 1-N релација помеѓу professor – subject_at_term За еден држан предмет има повеќе професори а за еден професор има еден предмет. • **subject_events** 1-N релација помеѓу subject_at_term – calendar_event За еден настан на предметот има повеќе настани во календарот за предметот во семестарот, а за настан во календарот за предметот во семестарот има еден настан. • **has_consultations** 1-N релација помеѓу professor – calendar_event За една косултација има повеќе професори, а за еден продесор има едни консултации. • **holds_event** 1-N релација помеѓу professor – calendar_event За еден одржан настан е одржам од повеќе професори, а за еден професор има еден настан. • **book_modules** 1-N релација помеѓу subject_book – chapter Слаба релација. За еден модул во книга има повеќе пасуси во книгата за предметот, а за еден пасус во книгата за предметот има еден модул во книгата. • **book_ author** M-N релација помеѓу subject_book – author За повеќе автори на книгата има повеќе автори за книгата за предметот, а и за повеќе автори на книгата за предметот има повеќе автори. • **recommended_chapter** M-N релација помеѓу chapter – calendar_event За повеќе препорачани делови има повеќе настани за деловите, а и за повеќе настани за дел од книга има повеќе препорачани делови од книгата. • **event_reminder** 1-N релација помеѓу Calendar event – Reminder За еден потсетник за настан има повеќе настани во календар за потсетници, а за еден потсетник во календар има еден потсетник за настан. • **dashboard_task** 1-N релација помеѓу dashboard и task. Еден dashboard има повеќе таскови, и секој таск има еден dashboard. • **student_task** 1-N релација помеѓу student и Task Еден студент има повеќе задачи, и една задача ја имаат повеќе студенти. • **has_e-mail** 1-N Слаба релација помеѓу Student и e-mail Еден студент има повеќе e-mail и една e-mail ја има само еден студент. • **create_task** 1-N релација помеѓу Subject_at_term и task Еден предмет има повеќе таскови, и еден таск има само еден предмет. • **gives_feedback** 1-N Релација помеѓу Student и e-mail, student и feedback Еден студент има повеќе фидбеци, и еден фидбек е само од еден студент • **studied_in_school_year** 1-N Слаба релација помеѓу student и school year Еден студент може да е една година, и една година може да има повеќе студенти. • **has_taken_a_subject** 1-N N Релација помеѓу student и subject_at_term Еден студен може да има повеќе предмети, и еден предмет може да има повеќе студенти. • **student_event** 1-N Релација помеѓу student и calendar_event Еден студент може да има повеќе настани, и еден настан може да има повеќе студенти. • ** student_dashboard** 1-N Слаба релација помеѓу student и dashboard Еден студент има повеќе dashboards, но еден dashboard може да го има само еден студент. • **dashboard_notes** 1-N Слаба релација помеѓу dashboard и notes Еден dashboard може да има повеќе заебелшки, но една забелешка припаѓа само на еден dashboard. • **dashboard_event** M-N Релација помеѓу dashboard и calendar_event Еден dashboard има повеќе настани, и еден настан може да е на повеќе dashboards. • ** happens_at_place** 1-N Релација помеѓу place и calendar_event Еден настан има само една локација, на една локација може да има повеќе настани. == **[[span(style=color: #BF1B1B, Историјат)]]** **Верзија 1:** [attachment:"Version 1.jpg"] ------ **Верзија 2:** [attachment:"Version 2.jpg"] - промена: дел од ентитетите се сменети од слаби во силни, по консултација со професорот - работен фајл од верзија 2: [attachment:"Version 2 - Terra"] ------