| 1 | = Дизајнирање на базата на податоци = |
| 2 | |
| 3 | Одкако дизајнот на дијаграмот на релации (ER diagram) беше изработено, започнато беше имплементирањето на ентитетите и нивните релации во постоечка база на податоци. Дизајнот беше изработен во алатката '''pgAdmin4''', добро позната за PostgreSQL бази на податоци. Исто така беше употребувано и **DataGrip**, која алатка е направена од страна на JetBrains и има интуитивен дизајн за работа. |
| 4 | |
| 5 | Ентитети во самата база на податоци се следниве: |
| 6 | |
| 7 | * academicreport |
| 8 | <pre> |
| 9 | -- SQL query for academicreport |
| 10 | </pre> |
| 11 | |
| 12 | * crimetype |
| 13 | <pre> |
| 14 | -- SQL query for crimetype |
| 15 | </pre> |
| 16 | |
| 17 | * criminalreport |
| 18 | <pre> |
| 19 | -- SQL query for criminalreport |
| 20 | </pre> |
| 21 | |
| 22 | * diagnosis |
| 23 | <pre> |
| 24 | -- SQL query for diagnosis |
| 25 | </pre> |
| 26 | |
| 27 | * doctor |
| 28 | <pre> |
| 29 | -- SQL query for doctor |
| 30 | </pre> |
| 31 | |
| 32 | * employmentreport |
| 33 | <pre> |
| 34 | -- SQL query for employmentreport |
| 35 | </pre> |
| 36 | |
| 37 | * exportlog |
| 38 | <pre> |
| 39 | -- SQL query for exportlog |
| 40 | </pre> |
| 41 | |
| 42 | * filtersession |
| 43 | <pre> |
| 44 | -- SQL query for filtersession |
| 45 | </pre> |
| 46 | |
| 47 | * institution |
| 48 | <pre> |
| 49 | -- enumeration - type of institution |
| 50 | CREATE TYPE institution_type AS ENUM ('Primary School', 'High School', 'University', 'Academy'); |
| 51 | |
| 52 | -- institution entity table |
| 53 | CREATE TABLE Institution ( |
| 54 | institution_id SERIAL PRIMARY KEY, |
| 55 | name VARCHAR(100) NOT NULL, |
| 56 | address VARCHAR(100), |
| 57 | city VARCHAR(50), |
| 58 | type institution_type NOT NULL, |
| 59 | year_established INT CHECK (year_established >= 1800 AND year_established <= EXTRACT(YEAR FROM CURRENT_DATE)), |
| 60 | CONSTRAINT unique_institution_name_city UNIQUE (name, city) |
| 61 | ); |
| 62 | </pre> |
| 63 | |
| 64 | * medicalreport |
| 65 | <pre> |
| 66 | -- SQL query for medicalreport |
| 67 | </pre> |
| 68 | |
| 69 | * medicalreport_diagnosis |
| 70 | <pre> |
| 71 | -- SQL query for medicalreport_diagnosis |
| 72 | </pre> |
| 73 | |
| 74 | * person |
| 75 | <pre> |
| 76 | -- SQL query for person |
| 77 | </pre> |
| 78 | |
| 79 | * punishment |
| 80 | <pre> |
| 81 | -- SQL query for punishment |
| 82 | </pre> |
| 83 | |
| 84 | * report |
| 85 | <pre> |
| 86 | -- SQL query for report |
| 87 | </pre> |
| 88 | |
| 89 | * reportiumuser |
| 90 | <pre> |
| 91 | -- SQL query for reportiumuser |
| 92 | </pre> |
| 93 | |
| 94 | * role |
| 95 | <pre> |
| 96 | -- SQL query for role |
| 97 | </pre> |
| 98 | |
| 99 | * userprofile |
| 100 | <pre> |
| 101 | -- SQL query for userprofile |
| 102 | </pre> |
| 103 | |
| 104 | * userprofilelog |
| 105 | <pre> |
| 106 | -- SQL query for userprofilelog |
| 107 | </pre> |