Databases and DBMS: Models, Keys, SQL and Normalisation
Notes on databases and DBMS for exams: data models, tables and keys, SQL command groups, normalisation, ACID properties and popular database software.
By GK24 Editorial Team· Published · 4 min read

A database is an organised collection of related data that a computer can store, search and update without losing its structure. A Database Management System (DBMS) is the software that sits between the user and that stored data: it creates the database, accepts queries, enforces rules and returns results. Examiners in banking, SSC and railway papers treat this chapter as pure definition work, so the marks go to students who know the vocabulary exactly.
Why a DBMS replaced file systems
Before database software, every program kept its own data file. The same address was typed into three files, one copy was corrected and the others were not, and no program could read another's file. A DBMS removes these faults. It reduces data redundancy, so a fact is stored once. It keeps data consistent, because one correction reaches every user. It shares data among many users at the same time through concurrency control. It protects data by giving each user only the rights the administrator grants. It also supports backup and recovery, so a power failure does not destroy the day's work. The cost is that a DBMS is large, needs trained staff and needs more memory than a simple file.
Data models, oldest to newest
A data model decides how records are joined to one another. The hierarchical model, used in IBM's IMS in the 1960s, is the oldest: records form a tree and each child has exactly one parent. The network model allows a child to have many parents, so it stores a graph. The relational model, proposed by Edgar Frank Codd in 1970, stores everything in simple two-dimensional tables and joins them by matching values, and it is the model behind almost every exam question. The object-oriented model stores objects with their methods and is the newest of the four.
The words for a table and its parts
| Everyday word | Relational term | Meaning |
|---|---|---|
| Table | Relation | The whole two-dimensional structure |
| Row or record | Tuple | One complete entry, such as one student |
| Column or field | Attribute | One property, such as roll number |
| Number of columns | Degree | Counted on the attributes |
| Number of rows | Cardinality | Counted on the tuples |
| Allowed values | Domain | The set a column may draw from |
Keys: the heart of the chapter
- Super key: any set of attributes that identifies a row uniquely.
- Candidate key: a minimal super key, with no spare attribute in it.
- Primary key: the candidate key the designer chooses; it can never be null and never repeat.
- Alternate key: a candidate key that was not chosen as the primary key.
- Composite key: a primary key made of two or more columns together.
- Foreign key: a column that holds values of another table's primary key and so links the two tables.
SQL and its four command groups
Structured Query Language is the standard language of relational databases. It was created at IBM in the 1970s as SEQUEL and is a non-procedural language: the user states what is wanted, not how to fetch it. Its commands fall into groups that papers ask by name. DDL, the Data Definition Language, changes structure: CREATE, ALTER, DROP, TRUNCATE and RENAME. DML, the Data Manipulation Language, changes or reads the rows: INSERT, UPDATE, DELETE and SELECT. DCL, the Data Control Language, handles rights with GRANT and REVOKE. TCL, the Transaction Control Language, closes or undoes a transaction with COMMIT, ROLLBACK and SAVEPOINT. Remember the trap: DELETE removes chosen rows and can be rolled back, while TRUNCATE empties the whole table as a structural command.
Normalisation and the ACID properties
Normalisation splits a large table into smaller ones so that the same fact is not repeated and an update cannot leave the database half correct. First normal form removes repeating groups and keeps every value atomic. Second normal form removes partial dependency on part of a composite key. Third normal form removes transitive dependency, where a non-key column depends on another non-key column. Boyce-Codd normal form is a stricter form of the third. A transaction, meanwhile, must satisfy four properties known by the word ACID: atomicity, so all its steps happen or none do; consistency, so the database moves from one valid state to another; isolation, so parallel transactions do not disturb each other; and durability, so a committed change survives a crash.
Software students should be able to name
Oracle, MySQL, PostgreSQL, Microsoft SQL Server, IBM Db2 and SQLite are relational systems; Microsoft Access is the desktop DBMS bundled with Office. MongoDB is a NoSQL system that stores documents instead of rows and is asked as the odd one out. The person who designs and maintains the whole system is the Database Administrator, and the diagram that shows entities, attributes and relationships before a table is built is the Entity Relationship diagram, drawn with rectangles for entities, ovals for attributes and diamonds for relationships.
Exam Point of View
Papers ask this chapter as vocabulary. Expect the oldest data model (hierarchical), the proposer of the relational model (E. F. Codd, 1970), the relational word for a row or a column, and the meaning of degree against cardinality. Key questions are certain: which key cannot be null, which key links two tables, and the difference between a candidate key and an alternate key. SQL is asked by command group, so fix CREATE and TRUNCATE as DDL, INSERT and SELECT as DML, GRANT and REVOKE as DCL, and COMMIT and ROLLBACK as TCL. The classic traps are DELETE against TRUNCATE, cardinality against degree, and picking MongoDB when the question asks for a relational system. One-mark full forms of DBMS, RDBMS, SQL, DDL, DML and ACID are almost free marks.
Important Facts
| Full form of DBMS | Database Management System |
|---|---|
| Oldest data model | Hierarchical model (used in IBM IMS) |
| Relational model proposed by | Edgar Frank Codd, in 1970 |
| Row and column in relational terms | Row is a tuple, column is an attribute |
| Degree and cardinality | Degree is the number of attributes, cardinality the number of tuples |
| Key that cannot be null | Primary key |
| Key that links two tables | Foreign key |
| DDL commands | CREATE, ALTER, DROP, TRUNCATE, RENAME |
| DML commands | INSERT, UPDATE, DELETE, SELECT |
| DCL commands | GRANT, REVOKE |
| TCL commands | COMMIT, ROLLBACK, SAVEPOINT |
| ACID | Atomicity, Consistency, Isolation, Durability |
| NoSQL document database | MongoDB |
| Desktop DBMS in MS Office | Microsoft Access |
Practice MCQs on this topic
Which of the following is the oldest database model?
- A.Hierarchical
- B.Object oriented
- C.Deductive
- D.Relational
Show answer
The hierarchical model is the first data model used in commercial database software; IBM built its Information Management System on it in the 1960s for the Apollo programme.
Read the full explanation →Who proposed the relational model of databases?
- A.Charles Babbage
- B.Edgar Frank Codd
- C.Dennis Ritchie
- D.James Gosling
Show answer
Codd, a British computer scientist working at IBM, set out the relational model in a paper published in 1970, proposing that all data be held in simple two-dimensional tables and joined by matching values rather than by fixed pointers.
Read the full explanation →In relational database terminology, a row of a table is called a:
- A.Attribute
- B.Domain
- C.Tuple
- D.Relation
Show answer
In the vocabulary of the relational model a table is a relation, and one complete horizontal entry of that table, such as all the details of a single student, is a tuple; the ordinary words for it are row and record.
Read the full explanation →Which of the following is a Data Definition Language (DDL) command in SQL?
- A.INSERT
- B.CREATE
- C.SELECT
- D.UPDATE
Show answer
The Data Definition Language deals with the structure of the database rather than with the data inside it, and CREATE is its basic command, used to build a table, a view or the database itself; ALTER, DROP, TRUNCATE and RENAME belong to the same group.
Read the full explanation →Which SQL command removes all the rows of a table but keeps the table structure, and is classified as a DDL command?
- A.DELETE
- B.DROP
- C.TRUNCATE
- D.ERASE
Show answer
TRUNCATE empties a table in one operation, leaving the columns, data types and constraints in place so that the table can be filled again at once; because it changes the object rather than selected rows it is grouped with the Data Definition Language and it is much faster than deleting…
Read the full explanation →Which key uniquely identifies each record in a table and can never contain a null value?
- A.Foreign key
- B.Alternate key
- C.Primary key
- D.Super key
Show answer
The designer picks one candidate key as the primary key of a table, and the database then enforces two rules on it: its value must be different in every row, and it can never be left null, since a missing value would make a row impossible to identify.
Read the full explanation →An attribute of one table that refers to the primary key of another table is called a:
- A.Candidate key
- B.Foreign key
- C.Composite key
- D.Secondary index
Show answer
A foreign key is the column that stores values belonging to the primary key of another table, so a marks table can carry the roll number of a student table and the two tables can then be joined; the database uses it to enforce referential integrity, refusing a value that…
Read the full explanation →In the ACID properties of a database transaction, the letter I stands for:
- A.Integrity
- B.Indexing
- C.Isolation
- D.Inheritance
Show answer
Isolation means that transactions running at the same time do not see one another's incomplete work, so two clerks booking the last seat cannot both succeed; the database behaves as though the transactions ran one after the other.
Read the full explanation →The number of attributes in a relation is known as its:
- A.Cardinality
- B.Degree
- C.Domain
- D.Tuple count
Show answer
The degree of a relation counts its attributes, that is its columns, so a student table holding roll number, name, class and marks has degree four whatever the number of students in it.
Read the full explanation →Removing partial dependency of a non-key attribute on part of a composite primary key brings a table to which normal form?
- A.First normal form
- B.Second normal form
- C.Third normal form
- D.Boyce-Codd normal form
Show answer
A table is in second normal form when it is already in first normal form and no non-key attribute depends on only a part of a composite primary key; such a partial dependency is removed by moving that attribute into a table of its own.
Read the full explanation →Which of the following is a NoSQL database?
- A.Oracle
- B.MySQL
- C.MongoDB
- D.Microsoft SQL Server
Show answer
MongoDB stores data as documents in a flexible, JSON-like form instead of as rows in tables with a fixed set of columns, and it is queried through its own interface rather than mainly through SQL, which makes it the standard example of a NoSQL database in exam papers.
Read the full explanation →The SQL commands GRANT and REVOKE belong to which category?
- A.DDL
- B.DML
- C.DCL
- D.TCL
Show answer
The Data Control Language governs who may do what inside the database: GRANT gives a user a privilege such as the right to read or to update a table, and REVOKE withdraws a privilege already given.
Read the full explanation →Frequently Asked Questions
What is the difference between a database and a DBMS?
A database is the stored collection of related data. A DBMS is the software that creates that database and works on it, accepting queries, enforcing rules, controlling access and returning results. MySQL is a DBMS; the student records kept inside it are the database.
Which key can never be null and never repeat?
The primary key. It is the candidate key chosen to identify every row of a table, so a null value or a repeated value would make one row impossible to find. A candidate key that was not chosen becomes an alternate key.
What is the difference between DELETE and TRUNCATE?
DELETE is a DML command that removes the rows a WHERE clause selects and can be undone with ROLLBACK before a commit. TRUNCATE is a DDL command that empties the whole table at once, keeps the structure and is far faster because it does not log every row.
What is the difference between degree and cardinality?
Degree is the number of attributes, that is the number of columns in the table. Cardinality is the number of tuples, that is the number of rows. A table with five columns and two hundred rows has degree five and cardinality two hundred.
Why is normalisation done?
To remove repeated data and the update problems it causes. Splitting one wide table into related smaller tables means a fact is stored once, so an update cannot leave one copy corrected and another wrong, and space is saved. 1NF removes repeating groups, 2NF partial dependency and 3NF transitive dependency.
Is MongoDB a relational database?
No. MongoDB is a NoSQL database that stores data as documents rather than as rows in fixed tables, so it does not use SQL as its main language. Oracle, MySQL, PostgreSQL, Microsoft SQL Server and IBM Db2 are the relational systems asked in exams.
Sources
- Computer Science, Class XII, Unit: Database Concepts and Structured Query Language — NCERT
- Informatics Practices, Class XII, Unit: Database Query using SQL — NCERT





