Skip to main content
Chapter 8 of 13
NCERT Solutions

Database Concepts — NCERT Solutions

CBSE · Class 12 · Computer Science

NCERT Solutions for Database Concepts, CBSE Class 12 Computer Science: 34 textbook questions solved step by step. Covers Exercise.

43 questions84 flashcards5 concepts

Interactive on Super Tutor

Studying Database Concepts? Get the full interactive chapter.

Quizzes, flashcards, AI doubt-solver and a step-by-step study plan — built for NCERT solutions and more.

Free trial, no card needed.

An infographic illustrating the common problems associated with manual record keeping, such as data inconsistency, loss of data, tedious entry, and erroneous calculations, using a school attendance re
Super Tutor

Learn better with visuals Super Tutor pairs illustrations like this with notes and quizzes for Database Concepts.

Get started
34 Questions Solved · 1 Section

The first 17 solutions are open to read. The other 17 are free with a Super Tutor account. Unlock all 34 free in Super Tutor

Exercise

1Give the terms for each of the following:

a) Collection of logically related records.
b) DBMS creates a file that contains description about the data stored in the database.
c) Attribute that can uniquely identify the tuples in a relation.
d) Special value that is stored when actual data value is unknown for an attribute.
e) An attribute which can uniquely identify tuples of the table but is not defined as primary key of the table.
f) Software that is used to create, manipulate and maintain a relational database.

Show solution

a) Database — a collection of logically related records.

b) Meta-data — the file/description of the data stored in the database.

c) Primary key — the attribute that can uniquely identify tuples in a relation.

d) NULL — the special value used when actual data is unknown.

e) Alternate key — an attribute that can uniquely identify tuples but is not chosen as the primary key.

f) DBMS — software used to create, manipulate, and maintain a relational database.

Not sure why a step works? check your working in Super Tutor

2Why foreign keys are allowed to have NULL values? Explain with an example.Show solution

A foreign key is allowed to have NULL value when the referencing attribute is not a part of the primary key of that table. This is because the relation may not always have a matching record in the referenced table.

For example, in the STUDENT table, GUID is a foreign key referring to GUARDIAN(GUID). If a student’s guardian details are not available, then GUID can be NULL. The chapter also states that a foreign key can take NULL value if it is not part of the primary key of the foreign table.

Not sure why a step works? check your working in Super Tutor

3Differentiate between:

a) Database state and database schema
b) Primary key and foreign key
c) Degree and cardinality of a relation

Show solution

a) Database state and database schema

  • Database schema is the design of the database. It describes the structure, table names, columns, constraints, and relationships.
  • Database state (or instance) is the snapshot of data present in the database at a particular time.

b) Primary key and foreign key

  • Primary key uniquely identifies each tuple within its own relation.
  • Foreign key is an attribute in one relation that refers to the primary key of another relation and is used to create a relationship between tables.

c) Degree and cardinality of a relation

  • Degree = number of attributes/columns in a relation.
  • Cardinality = number of tuples/rows in a relation.

Not sure why a step works? check your working in Super Tutor

4Compared to a file system, how does a database management system avoid redundancy in data through a database?Show solution

A DBMS avoids redundancy by storing related data in related tables and using common fields to connect them.

In the school example, instead of repeating the student name and guardian details in the attendance file, the database keeps:

  • STUDENT table for student details
  • GUARDIAN table for guardian details
  • ATTENDANCE table for attendance records

The RollNumber links ATTENDANCE with STUDENT, and GUID links STUDENT with GUARDIAN. Also, guardian details are stored only once in the GUARDIAN table, so the same guardian information is not repeated for siblings. This reduces redundancy and helps avoid inconsistency.

Not sure why a step works? check your working in Super Tutor

5What are the limitations of file system that can be overcome by a relational DBMS?Show solution

The limitations of a file system that can be overcome by a relational DBMS are:

  • Difficulty in access
  • Data redundancy
  • Data inconsistency
  • Data isolation
  • Data dependence
  • Controlled data sharing

A relational DBMS helps manage related data efficiently, supports linking between tables, and allows controlled access through keys and queries.

Not sure why a step works? check your working in Super Tutor

6A school has a rule that each student must participate in a sports activity. So each one should give only one preference for sports activity. Suppose there are five students in a class, each having a unique roll number. The class representative has prepared a list of sports preferences as shown below. Answer the following:

Table: Sports Preferences

Roll_noPreference
9Cricket
13Football
17Badminton
17Football
21Hockey
24NULL
NULLKabaddi
Show solution

a) No.

Because Preference is the attribute where one student gives one sports choice. A value NULL would mean the preference is unknown or not given, which goes against the rule that each student must give only one preference.

b) Property 3 of relational model is violated, because an attribute must not have many values in one tuple. Here roll no. 17 appears twice with two different preferences.

Yes, we can use a constraint to prevent such violation, for example by making Roll_no unique and ensuring only one tuple per student is allowed.

c) No.

The tuple with NULL roll number should not be accepted if Roll_no is meant to identify a student, because a relation should have distinct tuples and the identifying attribute should not be NULL.

Not sure why a step works? check your working in Super Tutor

6aRoll no 24 may not be interested in sports. Can a NULL value be assigned to that student's preference field?Show solution

Yes. NULL may be assigned because the student may not be interested in sports, so the preference is unknown/not applicable. The chapter states that NULL is used to represent values that are unknown or non-applicable to certain attributes.

Not sure why a step works? check your working in Super Tutor

6bRoll no 17 has given two preferences in sports. Which property of relational DBMC is violated here? Can we use any constraint or key in the relational DBMS to check against such violation, if any?Show solution

The property of a relation violated is that each tuple must be distinct and each attribute should have a single atomic value. Here, roll number 17 has given two preferences, so one student appears in more than one tuple, which breaks the idea that one tuple should represent one distinct record.

Yes, we can use a constraint/key to check this. Since the school rule says each student should give only one preference, we can make Roll_no a primary key or at least place a UNIQUE constraint on it so that the same roll number cannot appear twice in the relation.

Not sure why a step works? check your working in Super Tutor

6cKabaddi was not chosen by any student. Is it possible to have this tuple in the Sports Preferences relation?Show solution

Yes, it is possible. A tuple can exist even if no student chose that sport, because the relation can contain data that are not referenced by another relation. The chapter does not forbid such a tuple. Since the relation is about sports preferences, Kabaddi with a roll number value can still be stored as a record, provided it follows the relation’s rules.

Not sure why a step works? check your working in Super Tutor

7In another class having 2 sections, the two respective class representatives have prepared 2 separate Sports Preferences tables, as shown below:

Sports preference of section 1 (arranged on roll number column)

Table: Sports Preferences

Roll_noSports
9Cricket
13Football
17Badminton
21Hockey
24Cricket

Sports preference of section 2 (arranged on Sports name column, and column order is also different)

Table: Sports Preferences

SportsRoll_no
Badminton17
Cricket9
Cricket24
Football13
Hockey21
Show solution

Yes, the states of both relations are equivalent.

  • They contain the same set of tuples:
  • (9, Cricket)
  • (13, Football)
  • (17, Badminton)
  • (21, Hockey)
  • (24, Cricket)
  • The order of rows is different, but in a relation, sequence of tuples is immaterial.
  • The order of columns is also different, but sequence of attributes is also immaterial.

So both tables represent the same relation state.

Not sure why a step works? check your working in Super Tutor

8aTo store each item name along with its price, what relation should be used? Decide appropriate attribute names along with their data type. Each item and its price should be stored only once. What restriction should be used while defining the relation?Show solution

To store each item name with its price, use a relation such as ITEM(ItemID, ItemName, Price).

A suitable choice of attributes is:

  • ItemID: integer, unique identifier
  • ItemName: string/text
  • Price: numeric/decimal

Since each item and its price should be stored only once, the ItemID should be defined as the primary key or at least UNIQUE, so duplicate item records are not inserted.

Not sure why a step works? check your working in Super Tutor

8bIn order to generate bill, we should know the quantity of an item purchased. Should this information be in a new relation or a part of the previous relation? If a new relation is required, decide appropriate name and data type for attributes. Also, identify appropriate primary key and foreign key so that the following two restrictions are satisfied:

i) The same bill cannot be generated for different orders.
ii) Bill can be generated only for available items in the canteen.

Show solution

The quantity should be stored in a new relation, not in the item relation, because it belongs to a particular purchase/bill, not to the item itself.

A suitable design is:

  • ITEM(ItemCode, ItemName, Price, Calories) or ITEM(ItemCode, ItemName, Price)
  • BILLDETAILS(BillNo, ItemCode, Quantity)

To satisfy the given restrictions:

  1. The same bill cannot be generated for different orders
  • Use BillNo as the primary key of the bill relation, or use a composite key if needed with order identification.
  1. Bill can be generated only for available items in the canteen
  • Make ItemCode in BILLDETAILS a foreign key that refers to the primary key of the ITEM relation.

So, quantity should be in a separate relation and linked through a foreign key to the item table.

Not sure why a step works? check your working in Super Tutor

8cThe school wants to find out how many calories students intake when they order an item. In which relation should the attribute 'calories' be stored?Show solution

The attribute calories should be stored in the ITEM relation, because calories are a property of the item itself, not of the individual purchase. So the item master table should include it along with item name and price.

Not sure why a step works? check your working in Super Tutor

9An organisation wants to create a database EMP-DEPENDENT to maintain following details about its employees and their dependent.

EMPLOYEE(AadharNumber, Name, Address, Department, EmployeeID)

DEPENDENT(EmployeeID, DependentName, Relationship)

Show solution

a) The attributes of EMPLOYEE that can be used as candidate keys are:

  • AadharNumber
  • EmployeeID

Both can uniquely identify an employee.

b) To retrieve dependent details of a particular employee, we need the tables:

  • EMPLOYEE
  • DEPENDENT

The required key is EmployeeID, which is the key used to relate the two tables. In DEPENDENT, EmployeeID acts as a foreign key referencing EMPLOYEE.

c) Degree means number of attributes.

  • EMPLOYEE(AadharNumber, Name, Address, Department, EmployeeID) has 5 attributes, so degree = 5.
  • DEPENDENT(EmployeeID, DependentName, Relationship) has 3 attributes, so degree = 3.

Not sure why a step works? check your working in Super Tutor

9aName the attributes of EMPLOYEE, which can be used as candidate keys.Show solution

The candidate keys are the attributes that can uniquely identify an employee. In the given relation EMPLOYEE(AadharNumber, Name, Address, Department, EmployeeID), the attributes that can be used as candidate keys are AadharNumber and EmployeeID, because both can uniquely identify tuples.

Not sure why a step works? check your working in Super Tutor

9bThe company wants to retrieve details of dependent of a particular employee. Name the tables and the key which are required to retrieve this detail.Show solution

To retrieve details of a dependent of a particular employee, we need the tables:

  • EMPLOYEE
  • DEPENDENT

The required key is EmployeeID, because it is the common link between the two tables and is the primary key in EMPLOYEE and a foreign key in DEPENDENT.

Not sure why a step works? check your working in Super Tutor

9cWhat is the degree of EMPLOYEE and DEPENDENT relation?Show solution

The degree of a relation is the number of attributes.

  • EMPLOYEE(AadharNumber, Name, Address, Department, EmployeeID) has 5 attributes, so its degree is 5.
  • DEPENDENT(EmployeeID, DependentName, Relationship) has 3 attributes, so its degree is 3.

Not sure why a step works? check your working in Super Tutor

10School uniform is available at M/s Sheetal Private Limited. They have maintained SCHOOL_UNIFORM Database with two relations viz. UNIFORM and COST. The following figure shows database schema and its state.

School Uniform Database

Attributes and Constraints

Table: UNIFORM

AttributeUCodeUNameUColor
ConstraintsPrimary KeyNot Null-

Table: COST

AttributeUCodeSizePrice
ConstraintsComposite Primary Key>0

Table: UNIFORM

UCodeUNameUColor
1ShirtWhite
2PantGrey
3SkirtGrey
4TieBlue
5SocksBlue
6BeltBlue

Table: COST

UCodeSizeCOST Price
1M500
1L580
1XL620
2M810
2L890
2XL940
3M770
3L830
3XL910
4S150
4L170
5S180
5L210
6M110
6L140
6XL160

Free with a Super Tutor account

10aCan they insert the following tuples to the UNIFORM Relation? Give reasons in support of your answer.

i) 7, Handkerchief, NULL
ii) 4, Ribbon, Red
iii) 8, NULL, White

Free with a Super Tutor account

10bCan they insert the following tuples to the COST Relation? Give reasons in support of your answer.

i) 7, S, 0
ii) 9, XL, 100

Free with a Super Tutor account

11In a multiplex, movies are screened in different auditoriums. One movie can be shown in more than one auditorium. In order to maintain the record of movies, the multiplex maintains a relational database consisting of two relations viz. MOVIE and AUDI respectively as shown below:

Movie(Movie_ID, MovieName, ReleaseDate)
Audi(AudiNo, Movie_ID, Seats, ScreenType, TicketPrice)

Free with a Super Tutor account

11aIs it correct to assign Movie_ID as the primary key in the MOVIE relation? If no, then suggest an appropriate primary key.

Free with a Super Tutor account

11bIs it correct to assign AudiNo as the primary key in the AUDI relation? If no, then suggest appropriate primary key.

Free with a Super Tutor account

11cIs there any foreign key in any of these relations?

Free with a Super Tutor account

12For the above given database STUDENT-PROJECT, answer the following:

Student Project Database

Table: STUDENT

Roll NoNameClassSectionRegistration_ID
11MohanXI1IP-101-15
12SohanXI2IP-104-15
21JohnXII1CS-103-14
22MeenaXII2CS-101-14
23JuhiXII2CS-101-10

Table: PROJECT

ProjectNoPNameSubmissionDate
101Airline Database12/01/2018
102Library Database12/01/2018
103Employee Database15/01/2018
104Student Database12/01/2018
105Inventory Database15/01/2018
106Railway Database15/01/2018

Table: PROJECT ASSIGNED

Registration_IDProjectNo
IP-101-15101
IP-104-15103
CS-103-14102
CS-101-14105
CS-101-10104

Free with a Super Tutor account

12aName primary key of each table.

Free with a Super Tutor account

12bFind foreign key(s) in table PROJECT-ASSIGNED.

Free with a Super Tutor account

12cIs there any alternate key in table STUDENT? Give justification for your answer.

Free with a Super Tutor account

12dCan a user assign duplicate value to the field RollNo of STUDENT table? Jusify.

Free with a Super Tutor account

13For the above given database STUDENT-PROJECT, can we perform the following operations?

Free with a Super Tutor account

13aInsert a student record with missing roll number value.

Free with a Super Tutor account

13bInsert a student record with missing registration number value.

Free with a Super Tutor account

13cInsert a project detail without submission-date.

Free with a Super Tutor account

13dInsert a record with registration ID IP-101-19 and ProjectNo 206 in table PROJECT-ASSIGNED.

Free with a Super Tutor account

17 more solved questions in Database Concepts

They are free with a Super Tutor account, along with practice quizzes and flashcards for this chapter. Free to start, no card needed.

Frequently Asked Questions

What are the important topics in Database Concepts for CBSE Class 12 Computer Science?
Key topics in Database Concepts include File System and Its Limitations, DBMS and Database Advantages, File System to Database Conversion, Database Schema, Instance, Constraints, and Metadata. Study these first, then practise questions on each for the CBSE Class 12 board exam.
Are these NCERT Solutions for Database Concepts free?
The first 17 of the 34 solutions on this page are open to read. The other 17 are free with a Super Tutor account — signing up is free and needs no card.
How should I revise Database Concepts for the CBSE Class 12 board exam?
Learn the core ideas first, then work through the 43 practice questions on Database Concepts. Revise definitions regularly and use flashcards for quick recall before the exam.

Sources & Official References

Content is aligned to the official syllabus. Refer to the board website for the latest curriculum.

For serious students

Get the full Database Concepts chapter — start free.

Quizzes, flashcards, an AI doubt solver and a study plan for CBSE Class 12 Computer Science. Free to start, no card needed.