= Логички и физички дизајн == Релациска шема * Примарен клуч: __underline__ * Надворешен клуч: __underline__ и * * Not null: **bold** ---- User(**__UserId__**, **!FirstName**, **!LastName**, **Email**, **Username**, **Password**, **City**, **Neighborhood**, Bio, Quote) Book(**__BookId__**, **Title**, **Author**, **Language**, ImageURL) BookISBN(**__!BookId*__**, **ISBN**) • !BookId референцира кон Book(!BookId) Genre(**__!BookId*__**, **Genre**) • !BookId референцира кон Book(!BookId) Library(**__InventoryId__**, **__!UserId*__**, **__BookId*__**, **Availability**, **Condition**) • !UserId референцира кон User(!UserId) • !BookId референцира кон Book(!BookId) Wishlist(**__WishId__**, **__!UserId*__**, **__BookId*__**, Priority) • !UserId референцира кон User(!UserId) • !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**, __SwapTransactionId__) • !RequestId референцира кон !BookRequest(!RequestId) • !BorrowerId референцира кон User(!UserId) • !LenderId референцира кон User(!UserId) • !InventoryId референцира кон Library(!InventoryId) Swap(**__TransactionId1__**, **__TransactionId2__**, !SwapTransactionId) • TransactionId1 референцира кон Transaction(!TransactionId) • TransactionId2 референцира кон Transaction(!TransactionId) !TransactionBook(**__TransactionId*__**, **__!BookId*__**) • !BookId референцира кон Book(!BookId) • !TransactionId референцира кон Transaction(!TransactionId) Review(**__ReviewId__**, **__!TransactionId*__**, **__!ReceiverId*__**, **__!GiverId*__**, **Rating**, !ReviewerComment, **Date**) • !TransactionId референцира кон Transaction(!TransactionId) • !ReceiverId референцира кон User(!UserId) • !GiverId референцира кон User(!UserId) Message(**__MessageId__**, **__!SenderId*__**, **__!ReceiverId*__**, **Time**, **Date**, **!MessageContent**) • !SenderId референцира кон User(!UserId) • !ReceiverId референцира кон User(!UserId) !FriendRequest(**__FriendshipId__**, **__!SenderId*__**, **__!ReceiverId*__**, **!DateCreated**, **Status**) • !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**, **Time**, **Date**, **Description**, **Status**) • !TransactionId референцира кон Transaction(!TransactionId) • !MessageId референцира кон Transaction(!MessageId) • !FriendRequestId референцира кон Transaction(!FriendshipId) • !BookRequestId референцира кон Transaction(!RequestId) !UserNotification(**__UserId*__**, **__!NotificationId*__**) • !ReportedUserId референцира кон User(!UserId) • !NotificationId референцира кон Notification(!NotificationId) == DDL скрипта за бришење на табелите и креирање на табелите [attachment:ddlscript4.sql ddlscript.sql] == DML скрипта за полнење на табелите со податоци [attachment:dmlscript4.sql​ dmlskripta.sql] == Релациски дијаграм изведен од DBeaver [[Image(Relational Diagram BookSwap2.png)]]