wiki:ERModel

Version 7 (modified by 193113, 3 years ago) ( diff )

--

Верзија 3

Дијаграм

No image "ERmodel_v3.jpg" attached to ERModel

Податочни побарувања

Ентитети

  • Persons - Ентитет што дефинира заеднички својства на даден актер и режисер.
    • Кандидат клучеви
      • person_id - примарен клуч, вештачки пресметан, нумерички тип, задолжителен
    • Атрибути
      • type - текстуален тип, максимум 1 знак, задолжителен
      • name - текстуален тип, максимум 150 знаци
      • surname - текстуален тип, максимум 150 знаци
      • date_of_birth - timestamp
      • image_url - текстуален тип, максимум 250 знаци
      • description - текстуален тип, максимум 500 знаци
      • user_ratings - изведен атрибут, нумерички, помеѓу 0 и 5
  • Directors - Ентитет што репрезентира даден режисер.
    • Кандидат клучеви
      • person_id - примарен клуч, вештачки пресметан, нумерички тип, задолжителен
    • Атрибути
      • type - текстуален тип, максимум 1 знак, задолжителен
      • name - текстуален тип, максимум 150 знаци
      • surname - текстуален тип, максимум 150 знаци
      • date_of_birth - timestamp
      • image_url - текстуален тип, максимум 250 знаци
      • description - текстуален тип, максимум 500 знаци
      • user_ratings - изведен атрибут, нумерички(помеѓу 0 и 5)
  • Actors - Ентитет што репрезентира даден актер.
    • Кандидат клучеви
      • person_id - примарен клуч, вештачки пресметан, нумерички тип, задолжителен
    • Атрибути
      • type - текстуален тип, максимум 1 знак, задолжителен
      • name - текстуален тип, максимум 150 знаци
      • surname - текстуален тип, максимум 150 знаци
      • date_of_birth - timestamp
      • image_url - текстуален тип, максимум 250 знаци
      • description - текстуален тип, максимум 500 знаци
      • user_ratings - изведен атрибут, нумерички(помеѓу 0 и 5)
  • Movies - Ентитет што репрезентира даден филм.
    • Кандидат клучеви
      • movie_id - примарен клуч, вештачки пресметан, нумерички тип, задолжителен
    • Атрибути
      • imbd_rating- текстуален тип, максимум 150 знаци
      • user_ratings - изведен атрибут, нумерички, помеѓу 0 и 5
      • title - текстуален тип, максимум 150 знаци, задолжителен
      • image_url - текстуален тип, максимум 250 знаци
      • description - текстуален тип, максимум 500 знаци
      • airing_date - timestamp
  • Users - Ентитет што репрезентира даден корисник.
    • Кандидат клучеви
      • user_id - примарен клуч, вештачки пресметан, нумерички тип, задолжителен
    • Атрибути
      • username - текстуален тип, максимум 150 знаци, задолжителен
      • name - текстуален тип, максимум 150 знаци
      • surname - текстуален тип, максимум 150 знаци
      • email - текстуален тип, максимум 150 знаци, задолжителен
      • password- текстуален тип, максимум 50 знаци, задолжителен
  • Discussions - Ентитет што дефинира заеднички својства на дискусија за филм и актер.
    • Кандидат клучеви
      • dissucssion_id - примарен клуч, вештачки креиран, нумерички тип, задолжителен
    • Атрибути
      • type - текстуален тип, максимум 1 знак, задолжителен
      • text - текстуален тип, максимум 250 знаци, задолжителен
      • title - текстуален тип, максимум 150 знаци, задолжителен
      • date - timestap, задолжителен
      • likes - изведен атрибут, нумерички тип
      • dislikes - изведен атрибут, нумерички тип
  • Replies - Ентитет што репрезентира реплика.
    • Кандидат клучеви
      • reply_id - изведен клуч, вештачки креиран, задолжителен, нумерички тип
    • Атрибути
      • text - текстуален тип, максимум 250 знаци, задолжителен
      • date - timestap, задолжителен
      • likes - изведен атрибут, нумерички тип
      • dislikes - изведен атрибут, нумерички тип

  • Movie-Discussions - Ентитет што репрезентира дискусија за филм.
    • Кандидат клучеви
      • discussion_id - парцијален клуч, вештачки креиран, задолжителен, нумерички тип
    • Атрибути
      • type - текстуален тип, максимум 1 знак, задолжителен
      • title - текстуален тип, максимум 150 знаци, задолжителен
      • text - текстуален тип, максимум 250 знаци, задолжителен
      • date - timestap, задолжителен
      • likes - изведен атрибут, нумерички тип
      • dislikes - изведен атрибут, нумерички тип
  • Actor-Discussions - Ентитет што репрезентира дискусија за филм.
    • Кандидат клучеви
      • discussion_id - парцијален клуч, вештачки креиран, задолжителен, нумерички тип
    • Атрибути
      • type - текстуален тип, максимум 1 знак, задолжителен
      • text - текстуален тип, максимум 250 знаци, задолжителен
      • date - timestap, задолжителен
      • likes - изведен атрибут, нумерички тип
      • dislikes - изведен атрибут, нумерички тип
  • Genres - Ентитет што репрезентира жанр.
    • Кандидат клучеви
      • genre_id - примарен клуч, вештачки креиран, нумерички тип, задолжителен
    • Атрибути
      • type - текстуален тип, максимум 150 знаци, задолжителен

Релации

  • directs_in - релација што ги поврзува ентитетите Directors и Movies и посочува кој е режисерот на филмот. Филмот може да има само еден режисер, додека режисерот може да биде режисер на повеќе филмови.
  • acts_in - релација што ги поврзува ентитетите Actors и Movies и означува кој актер глуми во одреден филм. Во филмот може да глуми барем еден актер, додека актерот може да глуми барем во еден филм.
  • is_from_genre - релација што ги поврзува ентитетите Movies и Genres и означува на кој жанр припаѓа даден филм. Филмот мора да припаѓа барем на еден жанр, додека жанр може да биде доделен на повеќе филмови.
  • discussion_for_movie - релација што ги поврзува ентитетите МovieDiscussions и Movies и означува отворена дискусија за одреден филм. Филмот може да има повеќе отворени дискусии, додека дискусијата мора да се однесува само за еден филм.
  • rates_movies - релација што ги поврзува ентитетите Movies и Users и посочува оставен рејтинг и мислење за филм од страна на корисник. Корисникот може да остави рејтинг и мислење за повеќе филмови и филмот може да добие рејтинг и мислење од повеќе корисници.
  • discussion_for_person - релација што ги поврзува ентитетите ActorDiscussions и Persons и означува отворена дискусија за личност. За личноста може да има отворено повеќе дискусии, додека дискусијата мора да се однесува само за една личност.
  • rates_person - релација што ги поврзува ентитетите Persons и Users и посочува оставен рејтинг и мислење за личност од страна на корисник. Корисникот може да остави рејтинг и мислење за повеќе личности и личноста може да добие рејтинг и мислење од повеќе корисници.
  • likes_genres - релација што ги поврзува ентитетите Persons и Genres и посочува на корисникот кој жанр му се допаѓа. Корисникот може да му се допаѓаат повеќе жанрови и жанрот може да им се допаѓа на повеќе корисници.
  • opens_discussion - релација што ги поврзува ентитетите Persons и Discussions и посочува отворена дискусија за филм или актер од страна на корисник. Корисникот може да отвори повеќе дискусии за филм или актер, додека дискусијата мора да биде отворена од еден корисник.
  • replies_to - релација што ги поврзува ентитетите Persons и Replies и посочува реплика за филм или актер од страна на корисник. Корисникот може да отвори повеќе дискусии за филм или актер, додека репликата мора да биде отворена од еден корисник.
  • reply - релација што ги поврзува ентитетите Discussions и Replies и посочува реплика на отворена дискусија. Дискусијата може да има повеќе реплики, додека репликата мора да се однесува за една дискусија.

Историјат:

* Верзија 1 - креирани сите атрибути и релации. * Верзија 2 - се направени следниве модификации во согласност со тикетот на асистентот:

  • Избришан ентитет DiscussionElements.
  • Discussions претворен во силен ентитет.
  • Додадено задолжително учество од страна на Movies во релацијата directs_in.
  • Избришан повеќевредносниот атрибут genres кај Movies и Users и истиот заменет со ентитет Genres во релација со Movies и Users.

* Верзија 3 - се направени следниве корекции:

  • Релациите rates_movie и rates_person претворени во многу-многу релација.
  • Додадени вештачки нумерички клучеви кај ентитетите Persons и Genres.
  • Додаден type атрибут од текстуален тип кај ентитет Genres.
  • Во релациите directs_in и acts_in, се тргнати задолжителните учество од ентитет Movie.
  • Кај ентитет Discussions додаден текстуален атрибут type за означување дали припаѓа на MoviesDiscussions или PersonDiscussions.
  • Кај ентитет Persons атрибут is_actor сменет во type.

Attachments (2)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.