Version 6 (modified by 12 months ago) ( diff ) | ,
---|
Релациска шема
Релациски модел Стабилна трансформација Трансформација на множествата ентитети student(student_id, username, s_first_name, s_last_name, s_password) subject-book(book_id, book_title, b_year_of_publishment, book_edition) chapter(book_id*, chapter_number, chapter_title)
- референцира од subject_book(book_id)
author(author_id, author_name, a_short_biography) feedback(fb_id, fb_date, fb_title, fb_description, fb_rating) e-mail(student_id*, e-mail_id, e-mail_address)
- референцира од student(student_id)
school_year(student_id*, starting_year, finishing_year) *референцира од student(student_id) term(student_id*, starting_year*, finishing_year*, term_type, term_start_date, term_end_date) *референцира од school_year(student_id, starting_year, finishing_year) subject_at_term(student_id*, starting_year*, finishing_year*, term_type*, term_subject_id, subject_name) *референцира од term(student_id, starting_year, finishing_year, term_type) professor(professor_id, p_first_name, p_last_name, p_role, p_e-mail) dashboard(student_id*, dashboard_id, dashboard_date) *референцира од student(student_id) notes(student_id*, dashboard_id*, note_id, notes_Date, note_text) *референцира од dashboard(student_id, dashboard_id) place(place_id, building_name, room_name) chalendar_event(chalendar_event_id, event_name, event_type, event_description, event_start_time, event_end_time) task(task_id, task_name, task_description, task_priority, is_done) reminder(calendar_event_id*, r_id, minutes_before_event, r_flag) *референцира од calendar_event(calendar _event_id) repeating_event(calendar_event_id*, event_week_day, repeats_every_n_weeks, starting_date, ending_date)
- референцира од calendar_event(calendar_event_id)
non-repeating_event(calendar_event_id, event_date)
- референцира од calendar_event(calendar_event_id)
Трансформација на множествата релации меѓу ентитетите has_taken_a_subject(student_id*, starting_year*, finishing_year*, term_type*, term_subject_id*, student_id) *референцира од subject_at_term((student_id, starting_year, finishing_year, term_type, term_subject_id) референцира од student(student_id) holds_subject(student_id*, starting_year*, finishing_year*, term_type*, term_subject_id*, professor_id) *референцира од subject_at_term((student_id, starting_year, finishing_year, term_type, term_subject_id) референцира од professor(professor_id) holds_event(calendar_event_id*, professor_id) *референцира од calendar_event(calendar_event_id) референцира од professor(professor_id) happens_at_place(calendar_event_id*, place_id) *референцира од calendar_event(calendar_event_id) референцира од place(place_id) term_has_subject() ИДЕНТИФИКУВАЧКА ЗА subject_at_term dashboard_task(task_id*, student_id, dashboard_id) *референцира од task(task_id) референцира од dashboard(student_id, dahsboard_id) recommended_book(student_id*, starting_year*, finishing_year*, term_type*, term_subject_id*, book_id) *референцира од subject_at_term(student_id, starting_year, finishing_year, term_type, term_subject_id) референцира од book(book_id) recommended_chapter(calendar_event_id*, book_id, chapter_number) *референцира од calendar_event(calendar_event_id) референцира од chapter(book_id, chapter_number) has_consultations(calendar_event_id*, professor_id) *референцира од calendar_event(calendar_event_id) референцира од professor(professor_id) year_has_subject(student_id*, starting_year*, finishing_year*, term_type*, term_subject_id*, student_id, starting_year, finishing_year) *референцира од subject_at_term(student_id, starting_year, finishing_year, term_type, term_subject_id) референцира од school_year(student_id, starting_year, finishing_year) student_dashboard() ИДЕНТИФИКУВАЧКА ЗА dashboard studied_in_school_year() ИДЕНТИФИКУВАЧКА ЗА school_year dashboard_notes() ИДЕНТИФИКУВАЧКА ЗА notes book_modules() ИДЕНТИФИКУВАЧКА ЗА chapter contains_terms() ИДЕНТИФИКУВАЧКА ЗА term has_e-mail() ИДЕНТИФИКУВАЧКА ЗА e-mail dashboard_event(student_id*, dashboard_id*, calendar_event) *референцира од dashboard(student_id, dashboard_id) референцира од calendar_event(calendar_event_id) subject_event(calendar_event_id*, student_id, starting_year, finishing_year, term_type, term_subject_id) *рефенцира од calendar_event(calendar_event_id) рефенцира од subject_at_term(student_id, starting_year, finishing_year, term_type, term_subject_id) creates_task(task_id*, student_id, starting_year, finishing_year, term_type, term_subject_id) *рефенцира од task(task_id) рефенцира од subject_at_term(student_id, starting_year, finishing_year, term_type, term_subject_id) student_event(calendar_id*, student_id) *референцира од calendar_event(calendar_event_id) референцира од student(student_id) student_task(task_id*, student_id) *референцира од task(task_id) референцира од student(student_id) book_author(author_id*, book_id) *референцира од author(author_id) референцира од book(book_id) gives_feedback(fb_id*, student_id) *референцира од feedback(fb_id) референцира од student(student_id) event_reminder() ИДЕНТИФИКУВАЧКА ЗА reminder
Open points:
Зошто стабилна трансформација?
Одржливост -промените во моделот резултираат во минимални промени кај релациите Скалабилност и адаптибилност- креира робустна основа која може да трпи промени и надградби без наружување на целата структура
ER- ВЕРЗИЈА 2
унифицирање на имиња
description -> task_description password -> s_password username -> s_username role -> p_role year_of_publishment -> b_year_of_publishment Place -> place Author -> author
додавање на атрибут
p_e-mail кај professor a_short_biography кај author
промена од слаб во силен ентитет
feedback
промена од силен во слаб ентитет
reminder
промена на клуч
кај dashboard се додава генериран клуч, dashboard_date преминува во атрибут
Табели
DDL скрипта за бришење на табелите и креирање на табелите
DML скрипта за полнење на табелите со податоци
Дијаграм од DBeaver
Attachments (8)
- polnenje.sql (11.3 KB ) - added by 12 months ago.
- kreiranje.sql (14.6 KB ) - added by 12 months ago.
- kreiranje_old1.sql (15.5 KB ) - added by 12 months ago.
- polnenje_old1.sql (10.4 KB ) - added by 12 months ago.
- schema.png (160.7 KB ) - added by 11 months ago.
- ENTITETI.jpg (216.5 KB ) - added by 11 months ago.
- RELACII1-2.jpg (189.8 KB ) - added by 11 months ago.
- RELACII2-2.jpg (131.9 KB ) - added by 11 months ago.
Download all attachments as: .zip