wiki:ERModel

Верзија 6

Дијаграм

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

Ентитети

  • Person – ентитет што претставува човек
    • Кандидат клучеви
      • id_person – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • Name – текстуален тип (String), максимум 9 карактери, задолжителен
      • Surname – текстуален тип (String), максимум 12 карактери, задолжителен
      • Address – текстуален тип (String), максимум 25 карактери, задолжителен
      • Town – текстуален тип (String), максимум 10 карактери, задолжителен
      • phone_num – текстуален тип (String), максимум 15 карактери, задолжителен
      • birth – тип датум(Date), задолжителен
      • email – текстуален тип (String), максимум 45 карактери, задолжителен
      • pass – текстуален тип (String), максимум 16 карактери, задолжителен
  • Employee – ентитет што претставува вработен во библиотеката
    • Атрибути
      • position – текстуален тип (String), максимум 14 карактери, задолжителен
  • Member – ентитет (корисник) што претставува член во библиотеката, има членство во истата
    • Атрибути
      • isPayedMemberShip – тип boolean, задолжителен
      • isPayedBook – тип boolean, задолжителен
  • SchoolType – ентитет што претставува во каков тип на школо е во момент корисникот
    • Кандидат клучеви
      • id_school – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • school_type_name– текстуален тип (String), максимум 40 карактери, задолжителен
  • MembershipType – ентитет што претставува какво членување избира корисникот
    • Кандидат клучеви
      • id_membership – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • mem_type_name – текстуален тип (String), максимум 35 карактери, задолжителен
  • PriceList – ентитет што претставува која цена треба да ја плати корисникот
    • Кандидат клучеви
      • id_price – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • price – нумерички тип (Int), задолжителен
  • OnlineDownload – ентитет што претставува симнување на некоја книга online
    • Кандидат клучеви
      • id_onlineDown – примарен клуч, нумерички тип (Long), задолжителен
      • downloaded - нумерички типн(Int), задолжителен
  • ReservationBook – ентитет што претставува резервирање на некоја книга
    • Кандидат клучеви
      • id_resBook – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • take_date – тип датум (Date), задолжителен
      • return_date – тип датум (Date), задолжителен
      • isReservedBook - тип boolean, задолжителен
  • ReservationPlace – ентитет што претставува резервирање на место во одредена просторија
    • Кандидат клучеви
      • id_resRoom – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • coming_date – тип датум (Date), задолжителен
      • leavingTime– тип време (Time), задолжителен
      • comingTime– тип време (Time), задолжителен
  • Library – ентитет што ја претставува библиотеката
    • Кандидат клучеви
      • id_library – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • name – текстуален тип (String), максимум 30 карактери, задолжителен
      • city – текстуален тип (String), максимум 13 карактери, задолжителен
  • Room – ентитет што претставува просторија за учење или читање во библиотеката
    • Кандидат клучеви
      • id_room – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • places – нумерички тип (Int), задолжителен, (означува колку места има во една просторија во библиотеката)
      • free_places – нумерички тип (Int), задолжителен, (означува уште колку слободни места се останати во просторијата)
  • Book – ентитет што претставува книга во библиотеката
    • Кандидат клучеви
      • Id_book – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • name – текстуален тип (String), максимум 120 карактери, задолжителен
      • book_num – нумерички тип (Int), задолжителен, (означува колку копии или изданија има во библиотеката од конкретна книга)
      • is_free – булеан тип (Bool), задолжителен
      • book_price – нумерички тип (Int), задолжителен, (цена на книга за изнајмување)
      • book_price_late – нумерички тип (Int), задолжителен, (цена на книга ако се врати со задоцнување)
  • Genre – ентитет што ги претставува типовите на жанрови
    • Кандидат клучеви
      • id_genre – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • name – текстуален тип (String), максимум 60 карактери, задолжителен
  • Review – ентитет што претставува review на некоја книга
    • Кандидат клучеви
      • id_review – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • rent_num – нумерички тип (Int), задолжителен, (колку пати е симната или изнајмена некоја книга)
      • rate – нумерички тип (Int), задолжителен, (која оценка и ја даваат читателите на книгата која што ја прочитале)
  • Writer – ентитет што ги претставува писател на книга
    • Кандидат клучеви
      • Id_writer – примарен клуч, нумерички тип (Long), задолжителен
    • Атрибути
      • Name – текстуален тип (String), максимум 70 карактери, задолжителен
      • book_num – нумерички тип (Int), задолжителен, (изведен атрибут и означува колку книги има библиотеката од конкретен писател)

Релации

  • work – оваа релација ги поврзува ентитетите Library и Employee, и означува дека во една библиотека работат повеќе вработени.
  • isMember - оваа релација ги поврзува ентитетите Library и Member, и означува дека во една библиотека членуваат повеќе луѓе. Member има тотално учество бидејќи во членувањето во библиотеката.
  • isIn - оваа релација ги поврзува ентитетите Member и SchoolType, и означува дека еден член може да избере или да има еден училишен тип.
  • chooses - оваа релација ги поврзува ентитетите Member и Membership_Type, и означува дека еден член може да има еден тип на чланарина во библиотеката.
  • has - оваа релација ги поврзува ентитетите School_Type и Membership_Type, и означува дека повеќе училишни типови имаат повеќе типови на месечна чланарина кои ги нудат.
  • paysFor - оваа релација ги поврзува ентитетите Membership_Type и Price, и означува која цена ќе ја плаќа корисникот, односно дека за еден тип на членување ќе плаќа една цена.
  • downloads – оваа релација ги поврзува ентитетите Member и Online_Download, и означува дека еден корисник може да направи повеќе симнувања. Online_Download има тотално учество, бидејќи симнувањето мора да биде направено од некој Member.
  • downloadsBook – оваа релација ги поврзува ентитетите Online_Download и Book, и означува дека за една книга може да се направат повеќе симнувања.
  • resBook – оваа релација ги поврзува ентитетите Member и Reservation_Book, и означува дека еден корисник може да направи повеќе резервации на книги.
  • rentBook – оваа релација ги поврзува ентитетите Book и Reservation_Book, и означува дека за една книга може да се направат повеќе изнајмувања. ReservationBook има тотално учество, бидејќи резервирањето на книга мора да биде направено од некој Member.
  • resPlace – оваа релација ги поврзува ентитетите Member и Reservation_Place, и означува дека еден корисник може да направи повеќе резервации за едно место. ReservationPlace има тотално учество, бидејќи резервирањето на место мора да биде направено од некој Member.
  • owns – оваа релација ги поврзува ентитетите Library и Book, и означува дека во една библиотека има повеќе книги. Book има тотално учество во оваа врска, бидејќи една библиотека мора да поседува книги.
  • hasRooms – оваа релација ги поврзува ентитетите Library и Room, и означува дека во една библиотека има повеќе простории.
  • hasPlaces – оваа релација ги поврзува ентитетите Room и Reservation_Place, и означува дека една просторија има повеќе места.
  • hasGenre – оваа релација ги поврзува ентитетите Book и Genre, и означува дека една книга може да има еден жанр.
  • reviews – оваа релација ги поврзува ентитетите Book и Review, и означува дека за една книга може да има повеќе reviews.
  • wrote – оваа релација ги поврзува ентитетите Book и Writer, и означува дека една книга може да има повеќе писатели, и дека повеќе писатели може да имаат напишано една книга. Writer има тотално учество во оваа врска, бидејќи една книга не може да нема писател.

Историјат:

  • Верзија 1 - креирани сите атрибути и релации, односно почетна верзија на ER дијаграм.
  • Верзија 2
    • корекција на цел дијаграм, поточно додавање на нови ентитети и врски, и поставување на соодветни атрибути кај ентитетите.
  • Верзија 3
    • додавање на врски помеѓу ентиетите со цел да се постигне посакуваното сценарио.
  • Верзија 4
    • корекција во атрибутите и примарните клучеви кај антитетите Employee и Member.
  • Верзија 5
    • подобрување на дизајнот и структурата на дијаграмот. Односно поедноставување, менување на слабите ентитети во регуларни и корегирање на атрибутите кај некои ентитети.
Last modified 2 years ago Last modified on 03/01/22 02:40:21

Attachments (6)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.