Question: The schema for the LibraryDB database is given below. borrow ( transactionID , personID * , borrowdate, duedate, returndate ) author ( authorID , firstname,

The schema for the LibraryDB database is given below.
borrow(transactionID, personID*, borrowdate, duedate, returndate)
author(authorID, firstname, middlename, lastname)
book_copy(bookID, bookdescID*)
book(bookdescID, title, subtitle, edition, voltitle, volnumber, language, place, year, isbn, dewey, subjectID*)
borrow_copy(transactionID*, bookID*)
person(personID, firstname, middlename, lastname, address, city, zipcode, phonenumber,
emailaddress, classification, studentno, idcardno)
publisher(publisherID, publisherfullname)
written_by(bookdescID*, authorID*, role)
published_by(bookdescID*, publisherID*, role)
subject(subjectID, subjecttype)
The primary keys are underlined. The foreign keys are denoted by asterisks (*).
Description of the schema
person -- keeps track of the people who borrow books from the library (personal and contact details).
author -- keeps track of personal information about authors.
publisher -- keeps track of the publisher information.
subject -- this relation keeps information about the subjects on which the library collection have books.
book -- contains information about the books that are available in the library. Every book can have one
or more physical copies in the collection. Each book can have one or more authors and it is published
by one or more publishers.
book_copy -- keeps track of the physical copies of the books in the library collection.
borrow -- keeps track of the check-ins and check-outs of the books. Every transaction is done by one
person, however may involve with one or more book copies. If there is no return date, it means the
book has been checked out but not returned.
Page 3 of 7
written_by -- associates books with authors. A book may be associated with several authors and an
author may be associated with several books. There is also an attribute 'role' that specifies the role of
the author for the book (author/ editor/ translator/ etc).
published_by -- associates publishers with books. There is an attribute 'role' here too which takes
values publisher/editor etc.
borrow_copy -- associates physical copies of books with a transaction. Members are allowed to
borrow several books in a single transaction.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!