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

Version 35 (modified by 201205, 30 hours ago) ( diff )

--

Логички и физички дизајн

Релациска шема

  • Примарен клуч: underline
  • Надворешен клуч: underline и *
  • Not null: bold

User(UserId, FirstName, LastName, Email, Username, Password, City, Neighborhood, Bio, Quote)

Book(BookId, Title, Author, Language, ImageURL)

BookISBN(BookISBNId, BookId*, ISBN)

  • BookId референцира кон Book(BookId)

Genre(GenreId, BookId*, Genre)

  • BookId референцира кон Book(BookId)

Library(InventoryId, UserId*, Availability, Condition)

  • UserId референцира кон User(UserId)
  • BookId референцира кон Book(BookId)

ContainsLibraryBook(LibraryBookId, InventoryId*, BookId*)

  • InventoryId референцира кон Library(InventoryId)
  • BookId референцира кон Book(BookId)

Wishlist(WishId, UserId*, Priority)

  • UserId референцира кон User(UserId)
  • BookId референцира кон Book(BookId)

ContainsWishlistBook(WishlistBookId, WishId*, BookId*)

  • WishId референцира кон Wishlist(WishId)
  • BookId референцира кон Book(BookId)

BookRequest(RequestId, RequesterId*, OwnerId*, BookId*, InventoryId*, RequestStatus, RequestDate)

  • RequesterId референцира кон User(UserId)
  • OwnerId референцира кон User(UserId)
  • BookId референцира кон Book(BookId)
  • InventoryId референцира кон Library(InventoryId)

Transaction(TransactionId, RequestId*, BorrowerId*, LenderId*, InventoryId*, BorrowDate, ReturnDate, BorrowDuration)

  • RequestId референцира кон BookRequest(RequestId)
  • BorrowerId референцира кон User(UserId)
  • LenderId референцира кон User(UserId)
  • InventoryId референцира кон Library(InventoryId)

!Swap(SwapId, TransactionId1, TransactionId2)

  • TransactionId1 референцира кон Transaction(TransactionId)
  • TransactionId2 референцира кон Transaction(TransactionId)

ExchangingBook( TransactionBookId, TransactionId*, BookId*)

  • BookId референцира кон Book(BookId)
  • TransactionId референцира кон Transaction(TransactionId)

Review(ReviewId, TransactionId*, ReceiverId*, GiverId*, Rating, ReviewerComment, ReviewDate)

  • TransactionId референцира кон Transaction(TransactionId)
  • ReceiverId референцира кон User(UserId)
  • GiverId референцира кон User(UserId)

Message(MessageId, SenderId*, ReceiverId*, MsgTime, MsgDate, MessageContent)

  • SenderId референцира кон User(UserId)
  • ReceiverId референцира кон User(UserId)

FriendRequest(FriendshipId, SenderId*, ReceiverId*, DateCreated, FriendshipStatus)

  • SenderId референцира кон User(UserId)
  • ReceiverId референцира кон User(UserId)

Report(ReportId, ReportedUserId*, ReportingUserId*, ReportType, ReportDate, Details, ReportStatus, ReportedEntity)

  • ReportedUserId референцира кон User(UserId)
  • ReportingUserId референцира кон User(UserId)

Notification(NotificationId, TransactionId*, MessageId*, FriendRequestId*, BookRequestId*, Type, NotifTime, NotifDate, Description, NotificationStatus)

  • TransactionId референцира кон Transaction(TransactionId)
  • MessageId референцира кон Transaction(MessageId)
  • FriendRequestId референцира кон Transaction(FriendshipId)
  • BookRequestId референцира кон Transaction(RequestId)

ReceivesNotification(UserNotificationId, UserId*, NotificationId*)

  • ReportedUserId референцира кон User(UserId)
  • NotificationId референцира кон Notification(NotificationId)

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

ddlscript.sql

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

dmlskripta.sql

Релациски дијаграм изведен од DBeaver

Attachments (32)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.