Changes between Initial Version and Version 1 of Ph2


Ignore:
Timestamp:
07/01/26 19:51:44 (6 days ago)
Author:
233149
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Ph2

    v1 v1  
     1== Логички и физички дизајн - Креирање база податоци (со SQL DDL)
     2
     3=== Релациско мапирање
     4
     5==== Ознаки
     6
     7 * Примарните клучеви се означени со bold и underline '''__PK__'''
     8 * Надворешните клучеви се означени со FK* за кои во заграда () е напишана табелата која ја референцираат.
     9 * Задолжителните атрибути се болдирани.
     10
     11==== Табели
     12
     13 * users ('''__id__''', '''name''', embg, '''surname''', index, bday, '''email''', '''password''', '''role''', created_at)
     14 * high_school ('''__user_id__'''*(users), '''gpa''', '''type''')
     15 * contact ('''__user_id__'''*(users), '''city''', '''municipality''', '''address''', '''number''', microsoft_email)
     16 * enrolled_semesters ('''__id__''', user_id*(users), '''quota''', major_id*(major), note_, student_comment, created_at, last_change, completed, semester_id*(active_semesters))
     17 * active_semesters ('''__id__''', '''year_''', '''type''')
     18 * semesters_subjects ('''__id__''', user_id*(users), enrolled_semesters_id*(enrolled_semesters), subjects_id*(subjects), professor_id*(users), signature)
     19 * subjects ('''__id__''', '''name''', '''code''', '''awarded_credits''', dependency_credit)
     20 * major ('''__id__''', '''name''')
     21 * major_subjects ('''__major_id__'''*(major), '''__subject_id__'''*(subjects), '''manditory_semester''', '''akreditacija''')
     22 * passed_subjects ('''__passed_id__''', enrolled_id*(semesters_subjects), '''grade''', '''date_passed''')
     23 * user_documents ('''__user_id__'''*(users), '''__document_id__'''*(documents))
     24 * documents ('''__id__''', '''type''', '''body''', '''cost''')
     25 * token ('''__id__''', user_id*(users), '''token''', '''expires_at''', '''is_valid''')
     26 * Payment ('''__id__''', user_id*(users), enrollment_id*(enrolled_semesters), '''amount''', '''ukim''')
     27 * enrollment_info ('''__id__''', user_id*(users), '''quota''', major_id*(major), '''enrollment_year''')
     28 * DependencySubject (subject_id*(subjects), dependency_id*(subjects))
     29 * Professour_subjects (prof_id*(users), active_semester_id*(active_semesters), subject_id*(subjects))
     30
     31=== DDL скрипта за бришење на табелите и креирање на табелите
     32
     33 [attachment:ddl.sql]
     34
     35=== DML скрипта за полнење на табелите со податоци
     36
     37 [attachment:dml.sql]
     38
     39=== Релациски дијаграм
     40
     41 [[Image(FINKI_Relational_Diagram.png, width=100%)]]
     42
     43=== Историјат
     44
     45 '''Верзија 1''' - Почетна верзија
     46
     47 '''Верзија 2'''
     48 * Додадени се табелите high_school и contact поврзани преку user_id како примарен и надворешен клуч кон users.
     49 * Додадена е табелата token за чување на токени за автентикација.
     50
     51 '''Верзија 3'''
     52 * Раздвоени се табелите enrollment_info и enrolled_semesters.
     53 * Додадена е табелата Payment со надворешни клучеви кон users и enrolled_semesters.
     54
     55 '''Верзија 4'''
     56 * Додадена е табелата DependencySubject за моделирање на предуслови меѓу предмети.
     57 * Додадена е табелата Professour_subjects (професор ↔ предмет ↔ активен семестар).
     58 * Во semesters_subjects задржан е user_id како надворешен клуч кон users (студентот на кого му припаѓа записот).
     59
     60=== Статус
     61
     62 ''' [[span(style=color: #008000, Завршено )]] '''