wiki:RelationalDesign

Version 25 (modified by 231136, 18 hours ago) ( diff )

--

Логички и физички дизајн - Креирање база податоци (со SQL DDL)

Релациско мапирање

Ознаки

Примарните клучеви се означени со bold и underline PK

Надворешните клучеви се означени со FK* за кои во заграда () е напишана табелата која ја референцираат.

Задолжителните атрибути се болдирани.

Табели

  1. Users (user_id, full_name, email, password, username, profile_photo)
  1. Non_Admin_Users (user_id*(Users))
  1. Admins (user_id*(Users))
  1. Listeners (user_id*(Users))
  1. Musical_Entities (id, title , genre , release_date)
  1. Songs (id*(MusicalEntities), link)
  1. Artists (user_id*(Users))
  1. Events (event_id, name, location, venue, date, time, user_id*(Users) )
  1. Albums (id*(MusicalEntities))
  1. Playlists (playlist_id, cover, name)
  1. Listens (listener_id*(Listeners), song_id*(Song), timestamp)
  1. Contributions(musical_entity_id*(Musical_Entities), artist_id*(Artists), contribution_order)
  1. Roles(role_id, name)

DDL скрипта за бришење на табелите и креирање на табелите

schema_creation.sql

DML скрипта за полнење на табелите со податоци

data_load.sql​

Релациски дијаграм

Историјат

Верзија 1 - Почетна верзија

Верзија 2

  • Додавање на атрибути за име, време и датум за секој настан, во табелата events
  • Промена на полето listen_count во табелата listens со timestamp

Верзија 3

  • Замена на полето creator_artist_id и creator_admin_id со единствен creator_id

Верзија 4

  • Креирање на нова табели: contributions, contribution_roles и roles во замена за постоечката artist_contributions. Овозможено еден артист да има повеќе улоги во својот придонес за дадена песна, пр. да е и водечки вокал и гитарист.

Attachments (12)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.