Changes between Version 2 and Version 3 of DatabaseCreation


Ignore:
Timestamp:
06/15/26 06:41:31 (5 days ago)
Author:
231267
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DatabaseCreation

    v2 v3  
    1414== Спортска категорија
    1515
    16 Во сликата може да се види како е креирана табелата `SPORT_CATEGORY`. Има поставено ограничување на `gender` да е од вредност 'M' или 'F', и надворешен клуш `sport_id` кој референцира `id` од `sport`. За полнењето користено е готово податочно множество кое е адаптирано во SQL. Вкупен број на записи но табелата изнесува 337.
     16Во сликата може да се види како е креирана табелата `SPORT_CATEGORY`. Има поставено ограничување на `gender` да е од вредност 'M' или 'F', и надворешен клуч `sport_id` кој референцира `id` од `sport`. За полнењето користено е готово податочно множество кое е адаптирано во SQL. Вкупен број на записи но табелата изнесува 337.
    1717
    1818[[Image(sport_category.png)]]
     
    3838== Федерација
    3939
    40 Ентитетот `FEDERATION` има 2 други ентитети кои наследуваат од него, `INTERNATIONAL_FEDERATION` и `NATIONAL_FEDERATION`. Основната табела ограничување за уникатно име и надворешен клуч кон спорт. Табелата за интернационална федерација има примарен клуч што е исто така надворешен клуч кој референцира кон федерација и каскоадно се брише. Националната федерација, како и интернационална, има примарен клуч што е исто така надворешен клуч кон федерација, но има дополнително надворешен клуч кој референцира кон држава и има надворешен клуч кон интернационална федерација во која членува.
     40Ентитетот `FEDERATION` има 2 други ентитети кои наследуваат од него, `INTERNATIONAL_FEDERATION` и `NATIONAL_FEDERATION`. Основната табела ограничување за уникатно име и надворешен клуч кон спорт. Табелата за интернационална федерација има примарен клуч што е исто така надворешен клуч кој референцира кон федерација и каскадно се брише. Националната федерација, како и интернационална, има примарен клуч што е исто така надворешен клуч кон федерација, но има дополнително надворешен клуч кој референцира кон држава и има надворешен клуч кон интернационална федерација во која членува.
    4141
    4242[[Image(federation_def.png)]]
    4343
    44 Податоците за национална федерација се генериаат на тој начин што за секоја комбинација од спорт и држава се генерира запис во `FEDERATION`, потоа генерира запис во `NATIONAL_FEDERATION` користејќи ги генерираните податоци од `FEDERATION`.
     44Податоците за национална федерација се генерираат на тој начин што за секоја комбинација од спорт и држава се генерира запис во `FEDERATION`, потоа генерира запис во `NATIONAL_FEDERATION` користејќи ги генерираните податоци од `FEDERATION`.
    4545
    4646На сличен начин се генерираат и за `INTERNATIONAL_FEDERATION`, каде за секој спорт се генерира федерација, потоа користејќи ги тие записи од федерација се полни и табелата за интернационална федерација.
     
    5555Првото квери генерира национални репрезентации за секоја комбинација на држава и спортска категорија.
    5656
    57 Второто квери ни генереир податоци со помош на привремена табела `temp_clubs_names` (готово множество од имиња на клубови) кади ги спојува случајно со една држава.
     57Второто квери генерира податоци со помош на привремена табела `temp_clubs_names` (готово множество од имиња на клубови) кади ги спојува случајно со една држава.
    5858
    5959Вкупно се генерирани 42.477 редици.
     
    6363== Спортски тим
    6464
    65 Ова табела е дефинирана со два надворешни клуча каде еден референцира кон спортска категорија и другиот кон спортски глуб. Податоците се генерираат со две квериа, едно генерира тимови за национални репрезентации, а другото за обични клубови тимоив.
     65Ова табела е дефинирана со два надворешни клуча каде еден референцира кон спортска категорија и другиот кон спортски клуб. Податоците се генерираат со две кверија, едно генерира тимови за национални репрезентации, а другото за обични клубови тимоив.
    6666
    6767За првото квери се користи секоја комбинација на национална репрезентација клуб и спортска категорија каде се генерира тим.
     
    7575== Клуб-федерација
    7676
    77 Табелата `CLUB_FEDERATION` претставува членство на клуб во некоја дедерација. Табелата е дефинирана со ограничување кое проверува валидноста на почетен и краен датум, и надворешни клучеви кои референцираат кон федерација и кон клуб соодветно.
     77Табелата `CLUB_FEDERATION` претставува членство на клуб во некоја федерација. Табелата е дефинирана со ограничување кое проверува валидноста на почетен и краен датум, и надворешни клучеви кои референцираат кон федерација и кон клуб соодветно.
    7878
    79 Се генериаат членства во првото квери така што за секоја комбинација на клуб што е национална репрезентација и национална федерација која е во иста држава како клубот се поставуа случаен почетен датум пред 40 до 50 години.
     79Се генерираат членства во првото квери така што за секоја комбинација на клуб што е национална репрезентација и национална федерација која е во иста држава како клубот се поставува случаен почетен датум пред 40 до 50 години.
    8080
    81 Во второро квери за секој тим од секој клуб се земаат сите спортови кои играат тие тимови и од нив се спојува секоја национална федерација. Со овие комбинации се генерира членство кое почнало пред 30 до 35 години (случаен избор).
     81Во второто квери за секој тим од секој клуб се земаат сите спортови кои играат тие тимови и од нив се спојува секоја национална федерација. Со овие комбинации се генерира членство кое почнало пред 30 до 35 години (случаен избор).
    8282
    8383Ова табела има 951.120 редици.
     
    8787== Регион
    8888
    89 Табелата `REGION` е дефинирана со примарен клуч `id`, име, и флег дали е дел од држава. Генерирана е од статичко множество на податоци и динамички генерирано од секоја држава поделена на северен, источен, западе и јужен регион. Ова табела имавкупно 1.345 редици.
     89Табелата `REGION` е дефинирана со примарен клуч `id`, име, и флег дали е дел од држава. Генерирана е од статичко множество на податоци и динамички генерирано од секоја држава поделена на северен, источен, западен и јужен регион. Ова табела има вкупно 1.345 редици.
    9090
    9191[[Image(region.png)]]
     
    9393== Држава-регион
    9494
    95 Ова табела претставува врска помеѓу држава и регион, имајќи само 2 надворе клуча кои референцираат кон соодветната табела, и исто така нивната комбинација е примарен клуч.
     95Ова табела претставува врска помеѓу држава и регион, имајќи само 2 надворешни клуча кои референцираат кон соодветната табела, и исто така нивната комбинација е примарен клуч.
    9696
    97 Редиците се генерираат динамички со спојување на северен, јужен, источен и западен регион на секоја држава со таа тржава. Исто се внесуваат податоци од готово множество.
     97Редиците се генерираат динамички со спојување на северен, јужен, источен и западен регион на секоја држава со таа држава. Исто се внесуваат податоци од готово множество.
    9898
    99 Вкупен број на податови но ова табела изнесува 1.447.
     99Вкупен број на податоци но ова табела изнесува 1.447.
    100100
    101101[[Image(country_region.png)]]
    102102
    103 == ...
     103== Локација
     104
     105Табелата `LOCATION` е дефинирана со ограничување за капаците да е позитивен, ограничување името да е уникатно за држава, и со надворешен клуч кој референцира кон табела за држава.
     106
     107Податоците се генерираат со случајна комбинација на неколку множества од имиња и случајни вредност, каде за секоја држава се генерира случајно помеѓу 300 и 1.060 локации. Ова генерира 108.697 редици.
     108
     109[[Image(location.png)]]
     110
     111== Спонсортство
     112
     113Ентитетот `SPONSORSHIP` претставува спонзорство помеѓу спонзор и тим и е дефиниран со окраничување `amount` да е позитивна, ограничување кое проверува валидност на почетен и краен датум, и два надворешни клуча кои соодветно референцираат кон спортски тим и спонзор.
     114
     115Вредности за ова табела се генерираат на тој начин што за секој тим се спојува со 7 случајни спонзори и се доделуваат случајни вредности за почетен и краен датум и за исплатата. Ова генерира 3.351.076 вредности.
     116
     117[[Image(sponsorship.png)]]
     118
     119== Национална лига
     120
     121Ова табела е дефинирана со ограничување за проверка на валидност на `date_started` и `date_disbanded`, и надворешни клучеви кои референцираат кон спортска категорија, национална федерација и регион.
     122
     123Податоците динамички се генерирани на тој начин што за секоја спортска категорија се спојуваат сите национални федерации и се генерира запис каде се избира случаен датум на започнување пред 5 до 6 години.
     124
     125За оваа табела се генерирани 55.605 податоци.
     126
     127[[Image(national_league.png)]]
     128
     129== Сезона
     130
     131Табелата за `SEASON` е дефинирана со ограничување кое го проверува валидноста на почетниот и крајниот датум, и со надворешен клуч кој референцира кон национална лига.
     132
     133За секоја национална лига се генерираат по 4 сезони, секоја една година по друга во последните 4 години со случајна варијација на почеток на сезоната за 0 до 30 дена.
     134
     135Ова ни генерира 278.026 редици.
     136
     137[[Image(season.png)]]
     138
     139== Натпревар
     140
     141Оваа табела е дефинирана со ограничување кое го проверува почетниот и крајниот датум. Дополнително има надворешни клучеви кои референцираат кон тип на натпревар, федерација која го организира натпреварот и кон сезона (доколку е дел од некоја сезона).
     142
     143Генерирање на податоци за оваа табела се врши така што за секоја сезона се спојува национална лига на таа сезона и се спојува тип на натпревар според име на лигата.
     144
     145Ова ни генерира 278.026 редици, исто како и сезона.
     146
     147[[Image(competition.png)]]
     148
     149== Сезона-тим
     150
     151Табелата `SEASON_SPORT_TEAM` претставува врска помеѓу сезона и спортски тим. Дефинирана е со комплексен примарен клуч кој е создаден од надворешни клучеви што референцираат кон сезона и спортски тим соодветно.
     152
     153Податоците се генерираат со спојување секоја сезона со 20 случајни тимови од лигата на која припаѓа сезоната. Со оваа квери се генерираат 2.103.219 редици.
     154
     155[[Image(season_sport_team.png)]]
     156
     157==