حل تشریحی سوال شماره 111 پایگاه دادهها
کنکور ارشد مهندسی کامپیوتر 1402
یک سیستم مدیریت کتابخانه براساس جداول زیر طراحی شده است.
اطلاعات اعضا شامل شناسامه، نام، سن، نوع عضویت
اطلاعات کتاب شامل کد شابک، عنوان، نویسنده، ناشر
Book (ISBN, Title, Author, Publisher)
اطلاعات امانت گیری شامل شناسه عضو ، شابک، تاریخ امانت گیری، تاریخ بازگشت
Borrowed (,BorrowDate, ReturnDate)
تاریخ امانت گیری، تاریخ بازگشت
کدام مورد، این محدودیت که ( هر فرد با نوع عضویت عادی (Regular) نمی تواند بیش از 2 بار یک کتاب را به امانت ببرد) را با استفاده از اظهار (Assertion) به دسترسی توصیف می نماید؟
Create Assertion Book Constraint
Cheek (Not Exists( from Member where Mem Type= 'regular' and Exists
( From Borrowed As B1 Where Exists
( From Borrowed As B2 Where B1.ISBN
And B1.BorrewDate!= B2.BorrowDate)
Create Assertion Book Constraint
Cheek (Not Exists( Select ISBN From Book Where
(select count (*) From Borrowed Natural Join Member
where Mem Type= 'regular')>2))
Create Assertion Book Constraint
Cheek (Not Exists( from Member where Mem Type= 'regular' and Not Exists
( From Borrowed where Member.MemID = Borrowed.MemID
Group By ISBN, MemID Having count (*)>2))
Create Assertion Book Constraint
Cheek (Not Exists(select (*) from Member Natural Join Borrowed Natural Join Book
where Mem Type= 'regular'
Group By ISBN, MemID Having count (*)>2))