School of Computer Science and Engineering
CSI1001-Principles of Database Systems
FALL-2025-26
Question Bank
Module I
1. Explain the difference between a File System and a DBMS?
(b)Can the data integrity and relationships between entities be achieved using
File System? Explain.
(c)Discuss a scenario where the traditional File System would be sufficient than a
DBMS.
2. Describe the three level Schema architecture of DBMS along with diagramatic
illustration.
3. How are the Logical Data independence and Physical Data independence
achieved? Explain with an example each.
4. List the Primary and Secondary rules from Armstrong’s Axioms with reference to
Functional dependencies of attributes. Explain with an example each.
5. For the following relation state, discuss the various anomalies that can occur
while performing operation on this relation.
6. Explain Database, DBMS, and Metadata.
7. Explain different types of Databases.
8. What are the advantages of DBMS?
9. Explain the DB System environment.
10. List the limitations/disadvantages of DBMS.
11. What are the problems with File system data management?
12. List and explain the functions and capabilities of DBMS.
13. Explain in detail the components of the DB system environment.
14. List and explain various DML, and DDL commands in SQL.
15. List and explain SQL Logical Operators.
16. Explain Special Operators.
17. What is the use of foreign key constraint with an example.
Module 2
18. Describe about Data Models and explain E-R model.
19. Define Instance and Domain?
20. What is an Entity? Explain different type of Entities.
21. What is an Attribute? Explain different types of Attributes.
22. Explain Recursive Relationship with example.
23. Explain Degree of Relationship and its types
24. What are the basic constructs of ER model?
Module 3
25. Distinguish between simple and composite attributes.
26. What is Normalization? Explain it.
27. What is Denormalization?
28. Define Functional Dependency.
29. Define the term Data Dictionary.
30. Define data redundancy
31. Consider the relation schema R(P, Q, W, S, T, U ) and the functional
dependencies
{P → Q, W → ST , PW → T , S → U }.
(a) Find the Candidate key of this relation R.
(b) Identify the highest normal form of the relation R.
(c) Decompose the relation R into 2nd and 3rd normal forms.
32. Explain 1NF, 2NF. Database Management System
33. Explain 3NF and BCNF
34. What is Primary Key? Explain some desirable Primary Key
characteristics.
35. Explain the usage of the Composite Primary key with an example.
36. For the following schemas:
Guests(G_ID, G_Name,
G_Age, G_Address)
Books(B_ID, G_ID, R_No,
B_Date) Rooms(R_No,
R_Type, R_capacity),
represent the following queries
in relational algebra
expressions:
(a) Find the name of guests who booked Room No. 102.
(b) Find the name and age of guests from Bengaluru.
(c) Find the names of guests who have booked an Executive suite.
(d) Display the Guest Name, Booking ID and
Booking date for all booking on 01st Nov.,
2024.
(e) Find the names of guests who booked a triple-bedded room.
37. Consider the following schema
EMPLOYEE(E_ID, E_Name, E_Date_of_Joining, E_Address,
D_ID, P_ID)
PROJECT(P_ID, E_ID, P_Name, P_Status)
DEPARTMENT(D_ID, _Name,
D_Location) For the query:
“Display the employee name, project name and
department name of all the employees who have
joined the department before 2022 and currently
have an on-going project”
(a) Write the SQL query in its canonical form.
(b) Convert the SQL query into relational algebra.
(c) Draw the corresponding initial query tree.
(d) Using Heuristic optimization
techniques show the query
execution plan.
38. Anand, Bhaskar and Cathy have, in their Bank accounts
| 10,000, | 5,000 and | 12500 respectively.
Bhaskar requests Anand | 1000 and
also Cathy | 1500, for which they
respond positively.
When the above transactions happen,
explain the scenarios when the
following properties are violated:
(a) Atomicity
(b) Consistency
(c) Isolation
(d) Durability
Illustrate each of the above scenarios with a state transition diagram.
39. For the schedule of transactions
S : r4(A); r2(A); r3(A); w1(B); w2(A); r3(B); w2(B)
(a) List all the conflicting operations.
(b) Determine the dependency between the transactions.
(c) Draw the precedency graph.
(d) Check whether the given schedule S is conflict serializable or not.
(e) Is conflict serializable, find all the possible serialized schedules.
40. Construct a B+ -tree for the following set of key values
{14, 24, 25, 38, 45, 66, 72, 76, 81, 87, 91, 97}
Assume the tree to be initially empty, values are added in ascending order and 4
pointers to fit a node.
41. Draw the ER diagram
The Motor Vehicle Branch administers driving tests and issues driver's licenses.
Any person who wants a driver's license must ¯rst take a learner's exam at any Motor
Vehicle Branch in the province. If he/she fails the exam, he can take the exam again
any time after a week of the failed exam date, at any branch. If he passes the exam, he
is issued a license (type = learner's) with a unique license number. A learner's license
may contain a single restriction on it. The person may take his driver's exam at any
branch any time before the learner's license expiry date (which is usually set at six
months after the license issue date). If he passes the exam, the branch issues him a
driver's license. A driver's license must also record if the driver has completed driver's
education, for insurance purposes
42. (i)State the three rules that govern whether a relation is in first, second and third
normal forms.
(ii) Convert the following table of data into first normal form, then second normal
form, and then third normal form
43. Convert the given ER diagram in to relational model corresponding to the
described application. List the relations with the attribute names, appropriate
data types and constraints and their functional dependencies.
44.
45.
A file system uses a block size of 512 bytes. Each record in the data file
occupies 40 bytes, and there are a total of 100,000 records. The system uses
both a primary index and a clustering index on an ordered field. The primary
index uses a search key of 6 bytes, while the clustering index uses a search key
of 4 bytes. Both types of indexes require a block pointer of 7 bytes, and each
record pointer is 6 bytes in size. Additionally, the clustering index is based on
1,000 distinct category values. Based on this information,
(i)Compute the blocking factor for the data file, primary index, and clustering
index.
(ii)Also, determine the number of blocks required for the data file, primary index,
and clustering index.
(iii)Calculate the number of block accesses needed to retrieve a record using the
primary and clustering indexes, assuming a binary search is used on the index.
46. Consider the following schedule with transactions T1, T2, and T3:
T1 T2 T3
Read(C)
Read(B)
Read(A)
Read(C)
Write(B)
Write(A)
Read(B)
Read(A)
Write(C)
Write(B)
Commit
Commit
Commit
(i) Construct the precedence graph for the schedule based on conflicting
operations.
(ii) Based on the graph, determine whether the schedule is conflict serializable.
(iii) If the schedule is serializable, provide an equivalent serial schedule that
preserves the same conflicting operation order.
(iv)List and explain all conflicting operation pairs in the schedule.
47. How does ARIES handle system crashes and ensure database consistency?
Illustrate with an example showing the use of Log Sequence Numbers (LSN),
transaction tables, and dirty page tables during recovery
48. Discuss the listed concepts in the relational database system with an example.
a) Instance
b) Primary key and Foreign key
c) DDL
d) DML
e) Data dictionary
49. Consider the following schema developed for an online fashion e-commerce
website.
Schema
Brands(brand_id, brand_name)
Order_items(order_id,item_id,quantity,price)
Products(item_id,item_name,brand_id,size,model_year,unit_price,stock)
Customer(customer_id,name,phone,email,shipping_address)
Orders(order_id,customer_id,order_status,order_date,payment_status,del
ivery_status)
Question
Based on the schema provided, write the relational query for the following
statements.
a) select the brand_id of the brand name “Park Avenue”
bList the orders worth 1000 or higher
c) List the orders having the delivery status as ‘delivered’ and ‘transit’
d) List the customer’s name whose order status is ‘returned’
e) List the products that are not sold
50. Consider our university central library. Design an E-R diagram for our library
management. The library database management system must track books
based on Title, authors, members, borrow history, overdue history and publisher
details. Note: If any assumption(s), mention it in your answer.
51. Consider the following relations in the Airline ticket reservation system:
Aiport (Airportcode, name, city, state)
Flight (Flightnumber, AirplaneID, airline, weekdays)
Schedule(Flightnumber,Gate, DepartureAirportCode, ScheduledDepTime,
ArivalAirportCode, ScheduledArivalTime, Status)
Fare (Flightnumber, FareCode, Amount, Remarks)
Airplane(AirplaneID, TotalNoOfSeats, Airplanetype)
Reservation (Flightnumber, Date, Seatnumber, Customername,
CustomerDob, CustomerAddress, Status)
a) Identify the primary keys and foreign keys in the relation. Briefly justify
why ?
b) Write DDL statement to create the relations: Airport, Flight, Schedule
and Fare. Justify jour DDL statement with a few example records.
c) Write a DML statement to insert your own records to the relations:
Airplane, Airport and Reservation.
d) Write SQL query to retrieve the reservation data containing customer
name as ‘John’
e) Develop SQL query to compute discount of 10% fare f’or the customers
who booked the flight having Flightnumber ‘F102’. The result should
produce the following information : Flightnumber, Amount,
DiscountedAmount (10% of Amount), NetAmount (=Amount-
DiscountedAmount), FareCode, Remarks
f) Compute the total number of flight schedule for each flight using SQL
query.
g) Retrieve the list of Flights alongwith airline that do not have any
reservation till now, with out using join opertator.
h) Produce SQL query for the flights (Flightnumber) having minimum and
maximum number of schedule.
i) Write SQL view to produce following information (Customername,
Flightnumber, ScheduledDepTime, Gate, Airportname, city, state)
j) If a scheduled flight cancenlled due to a technical reason, the
reservation tickets associated to that flight should updated with the
‘cancelled’ status. How do you achieve this using SQL statement ? Write
SQL statements that does both operation at the same time.
52. Consider the following records to be stored in the database.
ID Name Subject Marks
2 Blaire Hampton Database Systems 45
3 Aitana Norman Software Engg 58
5 Skyla Lam Database Systems 92
7 Danielle Richmond Database Systems 36
11 Clyde Nguyen Compiler Design 55
a) Sequential access scheme was used to store and retrieve information. Demonstrate the
sequential access scheme with suitable diagram to represent the given records. Demonstrate
the deletion of record having ID 3 and 7. After deletion, insert the record (19, Antony Paul,
Database Systems, 90) using sequential access scheme and show the resultant information.
b) Implement the B+ tree based access scheme to store and retrieve the record details.
Demonstrate your answer step-by-step with suitable diagram. If any assumption(s) is/are made,
specify the same.
53. With a neat diagram, explain the Two-Phase Locking Protocol.
54. Compare and Contrast various types of graph based protocol in terms of
Concurrency Control.
55. Explain the role of timestamp for Providing Concurrency control.
56. Consider you are a Database Administrator, your organization system has been
attacked by an intruder for this Scenario. Explain various recovery techniques
employed by the organization.
57. With an example explain Distributed transactions with commit Protocol.
Module 4
1. Translate the SQL query:
SELECT name FROM Employee WHERE salary > 50000;
into an equivalent relational algebra expression.
2. Explain the role of heuristic query optimization in relational algebra.
3. A query involves three tables joined with a selection condition. Explain how heuristic
optimization can reduce intermediate result sizes.
4. Given a relational schema and a SQL query, produce the optimized relational algebra
tree using heuristic rules (selection pushdown, projection pushdown, etc.).
5. List and explain the desirable properties of transactions (ACID).
6. A banking application executes:
T1: Withdraw $100 from account A
T2: Deposit $100 to account B
If the system crashes after T1 and before T2, which transaction property is violated?
Explain.
7. Define recoverable and cascading rollback schedules with examples.
8. Given a transaction schedule, determine whether it is recoverable or cascading
rollback-free.
9. Differentiate between conflict serializability and view serializability.
10. Given a precedence graph for a schedule, test whether it is conflict-serializable.
11. Why is locking required in transaction management?
12. Draw and explain a compatibility matrix for Shared (S) and Exclusive (X) locks.
13. In an e-commerce database, two transactions try to update the stock quantity of the
same product simultaneously. Explain how deadlock can occur and how it can be
prevented.
Module 5
14. Compare heap file organization and clustered file organization.
15. Explain the different levels of RAID and their use cases.
16. Given an index file size and block size, calculate the number of disk accesses for
single-level and multi-level indexing.
17. Differentiate between B-Tree and B+ Tree indexing with diagrams.
18. A library database stores millions of books. Suggest an indexing strategy for fast
retrieval by ISBN and title, and justify your choice.
19. Compare static hashing and dynamic hashing.
Module 6
20. Explain the two-phase locking protocol (2PL) and its types.
21. For the given transaction schedule, check whether it follows 2PL.
22. Describe the tree protocol for concurrency control and its advantage over 2PL.
23. Compare timestamp-based protocols with locking protocols.
Module 7
24. Differentiate between deferred update and immediate update recovery techniques.
25. A transaction updates three accounts in a distributed banking system. Describe how
the two-phase commit protocol ensures atomicity in case of a site failure.