Back to Blog
BCADBMSVNSGUImportant QuestionsSQLNormalization2026

VNSGU BCA Sem 2 DBMS Important Questions 2026 – Complete Exam Guide with SQL, ER Model & Normalization

A

Ankit Singh

2 July 2026· BCA Study Guides

VNSGU BCA Sem 2 DBMS Important Questions 2026 – Complete Exam Guide with SQL, ER Model & Normalization
📌 Exam Focus: This guide targets VNSGU BCA Semester 2 Database Management Systems (DBMS). Every question listed here is drawn from analysis of 5+ years of VNSGU papers and weighted by frequency of appearance. Updated for July 2026 exam cycles.

Why DBMS is the Most Important Paper in BCA Sem 2

Database Management Systems is the backbone of every software application you will ever build. From simple student records to complex banking transactions, every application stores and retrieves data through a database. DBMS as a subject covers two fundamentally important skills: designing databases correctly (using ER models and normalization) and querying them efficiently (using SQL and relational algebra).

In the context of VNSGU BCA Sem 2 exams, DBMS has a pass rate of approximately 78–82% — the second-lowest in the semester after Data Structures in Sem 3. The primary reason students fail is not lack of knowledge, but poor exam technique: they memorize definitions without understanding the logic, and then cannot apply those concepts when the question is phrased slightly differently.

This guide fixes that. Every question here is explained with the underlying reasoning — not just the memorized answer.

📌 Before you start: Download the official VNSGU BCA Sem 2 previous year papers from our BCA Sem 2 Question Papers page and work through them after reviewing this guide. You can also check our BCA Sem 2 Solved Papers for detailed step-by-step answer sheets.

VNSGU BCA Sem 2 DBMS Exam Pattern 2026

Before diving into questions, understand exactly how the paper is structured and scored.

SectionQuestion TypeMarks AllocationWhat It Tests
Section A5 compulsory short answers2 marks each = 10 marksDefinitions, key differences, terminology
Section B3 out of 5 medium questions5 marks each = 15 marksConcept explanations, small SQL queries, ER components
Section C2 out of 3 long questions10 marks each = 20 marksFull normalization, complete ER diagram, complex SQL joins
External Theory Total70 marks (3 hour paper)
Internal AssessmentAttendance + Assignments + Tests30 marksCollege-based evaluation
Practical (SQL Lab)Hands-on queries + Viva Voce50 marks (separate exam)Live SQL execution, CREATE/SELECT/JOIN queries

⚠️ Critical note on practicals: Many students ignore the SQL practical until the week before. This is a mistake. The practical exam is a separate 50-mark paper where you write and execute real SQL queries in a database environment (MySQL or Oracle). Practice writing queries by hand, without autocomplete, so you can replicate them under exam conditions.

Unit 1: Introduction to DBMS — Important Questions

Unit 1 covers foundational theory. In Section A of the exam, you will almost certainly be asked 1–2 questions from this unit. These are quick, definitions-heavy answers.

Q1. What is a Database Management System (DBMS)? What are its advantages over traditional file systems?

Answer: A Database Management System (DBMS) is software that manages the creation, maintenance, and use of a database. It provides an interface between the database and end users or application programs, ensuring that data is consistently organized and remains easily accessible.

Advantages of DBMS over Traditional File Systems:

  • Reduced Data Redundancy: File systems store copies of the same data in multiple files. DBMS centralizes data storage.
  • Data Consistency: Because data is stored once, updating it in one place propagates everywhere.
  • Data Sharing: Multiple users and applications can access the same database simultaneously.
  • Data Security: DBMS provides access control, allowing only authorized users to view or modify specific data.
  • Data Integrity: Constraints (like primary keys and foreign keys) are enforced by the DBMS, not the application.
  • Backup and Recovery: DBMS provides automated backup and recovery tools.

Q2. Explain the Three-Schema Architecture (Three-Level Architecture) of a DBMS.

Answer: The Three-Schema Architecture (proposed by ANSI/SPARC) separates a database system into three levels to provide data independence.

LevelSchema NameWhat It DescribesWho Sees It
1 (Lowest)Internal / Physical SchemaHow data is physically stored on disk (file structures, indexes, storage blocks)Database administrator, DBA tools
2 (Middle)Conceptual / Logical SchemaThe overall logical structure of the entire database (tables, relationships, constraints)DBAs and database designers
3 (Highest)External / View SchemaDifferent user-specific views of the database (customized views for different user roles)End users and application programmers

Data Independence: The three-level architecture provides physical data independence (changing storage does not affect the logical schema) and logical data independence (changing the logical schema does not affect user views).

Q3. What is the difference between a Database Administrator (DBA) and a Database Designer?

Answer: A Database Designer identifies the data to be stored, and chooses appropriate data structures and relationships during the initial database design phase. A Database Administrator (DBA) is responsible for the ongoing maintenance, security, backup, performance tuning, and access control of the live database system. The designer works at the beginning of the project; the DBA manages it throughout its life.

Unit 2: Entity-Relationship (ER) Model — Important Questions

ER diagrams are one of the most reliably tested topics in VNSGU DBMS. A 10-mark Section C question asking you to draw an ER diagram for a given scenario appears in nearly every previous year paper. Practice drawing them from scratch.

Q4. Explain the components of an ER Diagram with examples.

Answer: An Entity-Relationship (ER) Diagram is a graphical representation of the entities and their relationships in a database system.

ComponentSymbolDefinitionExample
EntityRectangleA real-world object with independent existenceStudent, Course, Teacher
Weak EntityDouble RectangleAn entity that depends on another entity for its identityDependent (depends on Employee)
AttributeOvalA property of an entityStudent_ID, Name, Age
Key AttributeUnderlined OvalAn attribute that uniquely identifies an entityStudent_ID
Multi-valued AttributeDouble OvalAn attribute with multiple valuesPhone_Numbers (a student can have many)
Derived AttributeDashed OvalAn attribute derived from another attributeAge (derived from Date_of_Birth)
RelationshipDiamondAn association between two or more entitiesStudent ENROLLS IN Course
Identifying RelationshipDouble DiamondA relationship that identifies a weak entityEmployee HAS Dependent

Q5. What are the types of relationships in an ER model? Explain with examples.

Answer: Relationships in ER models are classified by cardinality — the number of entities on each side of a relationship.

  • One-to-One (1:1): One instance of entity A relates to exactly one instance of entity B. Example: One Person has one Passport. One Passport belongs to one Person.
  • One-to-Many (1:N): One instance of entity A relates to many instances of entity B. Example: One Department employs many Employees. Each Employee belongs to one Department.
  • Many-to-Many (M:N): Many instances of entity A relate to many instances of entity B. Example: Students ENROLL IN Courses — one student can enroll in many courses; one course can have many students. This relationship requires a separate junction table (Enrollment) in the relational model.

Unit 3: Relational Model and SQL — Important Questions

SQL (Structured Query Language) questions are the most likely source of Section C marks. These questions require you to write actual query syntax. Learn exact SQL syntax — semicolons, capitalization of keywords, and correct clause order matter in the practical exam.

Q6. What is the difference between DDL, DML, DCL, and TCL in SQL?

CategoryFull FormCommandsPurpose
DDLData Definition LanguageCREATE, ALTER, DROP, TRUNCATE, RENAMEDefine and modify database structure (tables, views, indexes). Auto-commits — cannot be rolled back.
DMLData Manipulation LanguageSELECT, INSERT, UPDATE, DELETEManipulate data within tables. Can be rolled back before committing.
DCLData Control LanguageGRANT, REVOKEControl access permissions to the database objects.
TCLTransaction Control LanguageCOMMIT, ROLLBACK, SAVEPOINTManage transactions (save changes permanently or undo them).

Q7. Write SQL queries for the following using a Student table (StudentID, Name, Age, Branch, Marks):

This type of multi-part query question is extremely common in Section B and C.

-- (a) Create the Student table
CREATE TABLE Student (
    StudentID INT PRIMARY KEY,
    Name VARCHAR(50) NOT NULL,
    Age INT,
    Branch VARCHAR(30),
    Marks DECIMAL(5,2)
);

-- (b) Insert a record
INSERT INTO Student VALUES (101, 'Rahul Patel', 20, 'BCA', 78.5);

-- (c) Display all students in the BCA branch
SELECT * FROM Student WHERE Branch = 'BCA';

-- (d) Display names of students scoring more than 60 marks, sorted by Marks descending
SELECT Name, Marks FROM Student
WHERE Marks > 60
ORDER BY Marks DESC;

-- (e) Count the number of students in each branch
SELECT Branch, COUNT(*) AS TotalStudents
FROM Student
GROUP BY Branch;

-- (f) Find average marks per branch, only show branches with average > 65
SELECT Branch, AVG(Marks) AS AvgMarks
FROM Student
GROUP BY Branch
HAVING AVG(Marks) > 65;

-- (g) Update marks for StudentID 101
UPDATE Student SET Marks = 85.0 WHERE StudentID = 101;

-- (h) Delete students with marks below 35
DELETE FROM Student WHERE Marks < 35;

Q8. Explain the different types of JOINs in SQL with examples.

Answer: A JOIN operation combines rows from two tables based on a related column.

Consider two tables: Employee(EmpID, Name, DeptID) and Department(DeptID, DeptName).

JOIN TypeDescriptionQuery Example
INNER JOINReturns rows where there is a match in both tablesSELECT E.Name, D.DeptName FROM Employee E INNER JOIN Department D ON E.DeptID = D.DeptID;
LEFT (OUTER) JOINReturns all rows from the left table, and matched rows from the right. NULLs fill non-matching right-side columns.SELECT E.Name, D.DeptName FROM Employee E LEFT JOIN Department D ON E.DeptID = D.DeptID;
RIGHT (OUTER) JOINReturns all rows from the right table, and matched rows from the left.SELECT E.Name, D.DeptName FROM Employee E RIGHT JOIN Department D ON E.DeptID = D.DeptID;
FULL OUTER JOINReturns all rows when there is a match in either table.SELECT E.Name, D.DeptName FROM Employee E FULL OUTER JOIN Department D ON E.DeptID = D.DeptID;
SELF JOINJoins a table with itself. Useful for hierarchical data.SELECT A.Name AS Employee, B.Name AS Manager FROM Employee A, Employee B WHERE A.ManagerID = B.EmpID;

Unit 4: Normalization — Important Questions

Normalization is the single most important topic for scoring 10-mark Section C questions. If you master 1NF through BCNF with worked examples, you can secure guaranteed marks in the long answer section. VNSGU papers frequently give an unnormalized table and ask you to bring it to 3NF step by step.

Q9. What is Normalization? Explain 1NF, 2NF, 3NF, and BCNF with a worked example.

Answer: Normalization is the process of decomposing tables to eliminate data redundancy and update anomalies using a set of rules called Normal Forms.

Starting Table (Unnormalized):

StudentIDStudentNameCoursesTeacherNameTeacherPhone
101RahulDBMS, JavaProf. Shah, Prof. Mehta9876, 9854
102PriyaDBMSProf. Shah9876

1NF (First Normal Form): Eliminate repeating groups and multi-valued attributes. Each column must contain atomic (single-valued) values.

StudentIDStudentNameCourseIDCourseNameTeacherNameTeacherPhone
101RahulC01DBMSProf. Shah9876
101RahulC02JavaProf. Mehta9854
102PriyaC01DBMSProf. Shah9876

Primary Key: (StudentID, CourseID)

2NF (Second Normal Form): Must be in 1NF + No partial dependencies (no non-key attribute should depend on part of a composite primary key).

Problem: StudentName depends only on StudentID (partial dependency). CourseName, TeacherName depend only on CourseID (partial dependency). Fix: Decompose into separate tables.

  • Student Table: (StudentID [PK], StudentName)
  • Course Table: (CourseID [PK], CourseName, TeacherName, TeacherPhone)
  • Enrollment Table: (StudentID [FK], CourseID [FK]) — composite PK

3NF (Third Normal Form): Must be in 2NF + No transitive dependencies (non-key attribute should not depend on another non-key attribute).

Problem in Course Table: TeacherPhone depends on TeacherName (not directly on CourseID). This is a transitive dependency. Fix:

  • Course Table: (CourseID [PK], CourseName, TeacherName [FK])
  • Teacher Table: (TeacherName [PK], TeacherPhone)

BCNF (Boyce-Codd Normal Form): A stricter version of 3NF. For every functional dependency X → Y, X must be a superkey (a candidate key or a superset of a candidate key). Most tables in 3NF are already in BCNF. BCNF applies when a table has multiple overlapping candidate keys.

Q10. What are Functional Dependencies? Explain with an example.

Answer: A functional dependency (FD) is a constraint between two sets of attributes in a database relation. We say X → Y (X functionally determines Y) if for every valid instance of the relation, knowing the value of X uniquely determines the value of Y.

Example: In a Student table (StudentID, Name, Branch, HOD):

  • StudentID → Name (Knowing the StudentID uniquely determines the student's Name)
  • StudentID → Branch (Knowing the StudentID determines the Branch)
  • Branch → HOD (Knowing the Branch determines the Head of Department)
  • Therefore: StudentID → HOD (transitive dependency — basis for 3NF violation)

Types of Functional Dependencies:

  • Full FD: Y depends on the full composite key, not part of it.
  • Partial FD: Y depends on part of a composite key (violates 2NF).
  • Transitive FD: X → Y and Y → Z, therefore X → Z (violates 3NF).

Unit 5: Relational Algebra — Important Questions

Relational Algebra questions appear consistently in Section B (5-mark questions). The examiner gives two or more tables and asks you to compute the result of specific operations.

Q11. Explain the fundamental Relational Algebra operations.

OperationSymbolDescriptionSQL Equivalent
Selectionσ (sigma)Selects rows that satisfy a condition: σ_condition(Table)WHERE clause
Projectionπ (pi)Selects specific columns: π_col1,col2(Table)SELECT col1, col2
UnionCombines rows from two compatible relations, removes duplicatesUNION
IntersectionReturns rows common to both relationsINTERSECT
Set DifferenceReturns rows in first relation but not in secondEXCEPT / MINUS
Cartesian Product×All possible combinations of rows from two relationsCROSS JOIN
Natural JoinJoins two relations on their common attributesNATURAL JOIN
Renameρ (rho)Renames a relation or its attributesAS alias

Q12. Solve: Given Employee(EmpID, Name, DeptID, Salary) — write relational algebra for:

  • (a) Select all employees from Department 10:
    σ_DeptID=10(Employee)
  • (b) Display only EmpID and Name of all employees:
    π_EmpID,Name(Employee)
  • (c) Find employees in Dept 10 earning more than 50,000:
    σ_(DeptID=10 AND Salary>50000)(Employee)
  • (d) Display EmpID and Name of employees in Dept 10:
    π_EmpID,Name(σ_DeptID=10(Employee))

Unit 6: Transactions and Concurrency Control — Important Questions

Q13. What are ACID properties? Explain each with an example.

Answer: ACID properties are a set of properties that guarantee reliable processing of database transactions. Consider a bank transfer of ₹5,000 from Account A to Account B as the example.

PropertyFull FormDefinitionExample (Bank Transfer)
AAtomicityAll operations in a transaction succeed completely, or none of them take effect. The transaction is indivisible.If debiting ₹5,000 from A succeeds but crediting B fails, the debit is rolled back. The money cannot disappear.
CConsistencyA transaction brings the database from one valid state to another. All integrity constraints must remain satisfied.Total money in the bank (A + B) must be the same before and after the transfer.
IIsolationConcurrent transactions execute as if they were serial. Intermediate states of a transaction are invisible to other transactions.If two transfers happen simultaneously, neither transfer should see or depend on the other's intermediate state.
DDurabilityOnce a transaction is committed, its changes are permanently saved, even if the system crashes immediately after.Once the transfer is confirmed, even if the server crashes, ₹5,000 remains in Account B.

Q14. What are the concurrency problems that can occur in a database? Explain Lost Update, Dirty Read, and Unrepeatable Read.

Answer:

  • Lost Update: Two transactions read the same value and update it independently. The second update overwrites the first, causing the first update to be "lost." Example: Two clerks simultaneously update the same bank balance — one update is lost.
  • Dirty Read (Uncommitted Dependency): Transaction T1 reads a value written by T2 that has not yet been committed. If T2 is later rolled back, T1 has read data that never officially existed. Example: T1 reads a balance updated by T2. T2 then rolls back, but T1 has already used the wrong balance.
  • Unrepeatable Read: Transaction T1 reads the same data twice, but T2 modifies that data between the two reads. T1 gets different values for the same read operation. Example: T1 reads a product price as ₹500, then T2 updates it to ₹600, then T1 reads it again and gets ₹600 — inconsistent read.

Q15. What is a deadlock? How can it be prevented?

Answer: A deadlock is a situation where two or more transactions are waiting for each other to release locks, and none of them can proceed.

Example:

  • Transaction T1 holds a lock on resource A and is waiting for resource B.
  • Transaction T2 holds a lock on resource B and is waiting for resource A.
  • Both transactions wait forever — neither can proceed.

Deadlock Prevention Methods:

  • Wait-Die Scheme: An older transaction waits for a younger one to release the lock. If a younger transaction requests a lock held by an older one, the younger one is killed (die) and restarted later.
  • Wound-Wait Scheme: An older transaction preempts (wounds) a younger one holding the needed lock. The younger one is rolled back and restarted.
  • Timeout: A transaction is aborted if it has been waiting for a lock beyond a fixed time limit.
  • Deadlock Detection: Use a wait-for graph. If a cycle is detected in the graph, a deadlock exists and one transaction is aborted to break the cycle.

Unit 7: File Organization and Indexing — Important Questions

Q16. What are the types of file organization in DBMS?

Answer:

  • Heap (Unordered) File Organization: Records are stored in the order they are inserted, with no sorting or ordering. Insertion is fast (just append to the end) but searching requires a full scan of the file — slow for large files.
  • Sequential (Ordered) File Organization: Records are stored in sorted order based on a key field. Searching is faster using binary search, but insertion requires finding the right position and may require file reorganization.
  • Hashed File Organization: A hash function is applied to a key field to determine the block in which a record is stored. Provides O(1) average-time lookups, but suffers from collisions and poor performance for range queries.
  • Clustered File Organization: Related records from different files are stored together on the same disk blocks. Reduces disk I/O for JOIN operations but can be complex to maintain.

Q17. What is an Index in DBMS? Explain Dense vs. Sparse Index.

Answer: An index is a separate data structure (like a book's index) that stores key values and pointers to the actual records, allowing faster data retrieval without scanning the entire file.

  • Dense Index: An index entry exists for every record (every key value) in the data file. Faster lookups, but requires more storage space.
  • Sparse Index: Index entries only exist for some records (typically one per data block). Uses less storage, but requires more steps to find a record — you must find the closest index entry and then scan forward.

B-Tree and B+ Tree Indexes are the most commonly used index structures in modern DBMS (MySQL uses B+ Trees by default). They maintain sorted data and allow searches, insertions, and deletions in O(log n) time.

5-Year Topic Frequency Analysis (VNSGU BCA Sem 2 DBMS)

The following analysis is based on past VNSGU BCA Sem 2 DBMS papers. Topics are ranked by frequency of appearance in Section C (10-mark questions).

RankTopicAppeared InTypical Question Type
1Normalization (1NF → 3NF with example)5 out of 5 yearsSection C (10 marks)
2SQL Queries (CREATE, SELECT, JOIN, GROUP BY)5 out of 5 yearsSection B + C (5–10 marks)
3ER Diagram Drawing4 out of 5 yearsSection C (10 marks)
4ACID Properties4 out of 5 yearsSection B (5 marks)
5DDL vs DML Differences4 out of 5 yearsSection A + B (2–5 marks)
6Relational Algebra Operations3 out of 5 yearsSection B (5 marks)
7Three-Schema Architecture3 out of 5 yearsSection B (5 marks)
8Concurrency Control (Deadlock, Dirty Read)3 out of 5 yearsSection B + C (5–10 marks)
9Primary Key vs Foreign Key3 out of 5 yearsSection A (2 marks)
10File Organization Types2 out of 5 yearsSection B (5 marks)

Common Mistakes BCA Students Make in DBMS Exams

⚠️ Don't lose marks on these avoidable errors:
  1. Drawing incomplete ER diagrams: Students draw rectangles and ovals but forget to label the cardinality (1:1, 1:N, M:N) on the relationship lines. Each relationship must show its cardinality to earn full marks.
  2. Mixing up 2NF and 3NF: 2NF eliminates partial dependencies (depending on part of a composite key). 3NF eliminates transitive dependencies (non-key depending on non-key). These are different concepts — do not confuse them.
  3. Writing SQL without semicolons: In the practical exam, every SQL statement must end with a semicolon. Missing semicolons cause execution errors.
  4. Forgetting HAVING vs WHERE: WHERE filters rows before grouping. HAVING filters after GROUP BY. You cannot use aggregate functions (COUNT, AVG, SUM) in a WHERE clause — use HAVING instead.
  5. Explaining ACID without examples: A definition-only answer for ACID properties earns 2–3 marks. An answer with a concrete example (bank transfer, flight booking) earns full marks.
  6. Skipping the NULL handling rules: NULL is not equal to 0 or an empty string. In SQL, any comparison with NULL using = returns NULL (false). Use IS NULL or IS NOT NULL instead.

Exam Day Strategy: How to Attempt the DBMS Paper

  • Section C first (40 minutes): Read all three options. Choose the two where you can write a complete answer (normalization with a table, SQL queries, or full ER diagram). Start here while your mind is fresh.
  • Section B second (45 minutes): Choose 3 from 5. Pick questions where you can fill a full page — relational algebra problems, transaction problems, and SQL design questions tend to allow full answers.
  • Section A last (15 minutes): These 2-mark questions are definitions. Do them last so you do not waste time over-writing them. Each one needs 2–3 sentences maximum.
  • Diagram tip: Draw ER diagrams in pencil first, then trace over in pen after confirming the structure. Use a ruler for rectangles and diamonds.

Internal Links: Related Study Resources

Frequently Asked Questions — VNSGU BCA Sem 2 DBMS

Q: What is the passing score for VNSGU BCA Sem 2 DBMS?

You must score at least 28 marks out of 70 in the external theory paper (40%). You must also independently pass the practical exam (minimum 20 out of 50). Internal marks are awarded by your college. Failing either theory or practical means a backlog in DBMS — it does not average out.

Q: Is SQL syntax case-sensitive in MySQL?

SQL keywords (SELECT, FROM, WHERE) are case-insensitive in MySQL. However, table and column names may be case-sensitive depending on the operating system (Linux MySQL is case-sensitive; Windows MySQL is not). Best practice: always write SQL keywords in UPPERCASE for readability and write table/column names exactly as created.

Q: How to draw a Many-to-Many relationship in an ER diagram?

A Many-to-Many (M:N) relationship is shown with a diamond shape between two entities, with "M" written near one entity and "N" near the other. When converting this ER model to relational tables, M:N relationships require a separate junction (bridge) table. For example, the Student-Course M:N relationship becomes an "Enrollment" table with foreign keys (StudentID, CourseID) forming a composite primary key.

Q: What is the difference between TRUNCATE and DELETE?

DELETE is a DML command that removes specific rows matching a WHERE condition and can be rolled back. TRUNCATE is a DDL command that removes ALL rows from a table, cannot be rolled back (auto-commits), and is faster than DELETE because it does not log individual row deletions — it deallocates entire data pages.

Q: How does a hash function work in hashed file organization?

A hash function takes a key value (e.g., StudentID = 105) and applies a mathematical formula (e.g., ID mod 10 = 5) to produce a bucket number (5). The record is stored in bucket 5. To retrieve the record, apply the same hash function to the search key to find the bucket directly — no scanning required. The problem is collisions (two keys mapping to the same bucket), which are handled using chaining (linked list of overflowed records).

Q: What is the difference between a VIEW and a TABLE in SQL?

A TABLE is a physical object in the database — it stores actual data on disk in rows and columns. A VIEW is a virtual table — it does not store data itself, but stores a SQL SELECT query. Every time the view is queried, the stored SELECT statement runs and produces results from the underlying base tables. Uses of views: (1) Security — hide sensitive columns (e.g., salary) from certain users. (2) Simplicity — present complex JOIN queries as a simple name. (3) Consistency — a single view definition means multiple users always see the same structure. Syntax: CREATE VIEW StudentView AS SELECT StudentID, Name, Branch FROM Student WHERE Branch = 'BCA';

Q: What is the difference between a superkey, candidate key, and primary key?

A Superkey is any set of attributes that can uniquely identify a row in a table. It may contain more attributes than needed. Example: {StudentID}, {StudentID, Name}, {StudentID, Name, Age} are all superkeys if StudentID is unique. A Candidate Key is a minimal superkey — a superkey where removing any attribute would make it no longer unique. Only the necessary attributes are included. Example: {StudentID} is a candidate key; {StudentID, Name} is not (removing Name still leaves a unique identifier). A Primary Key is the candidate key chosen by the database designer to uniquely identify rows. There can be multiple candidate keys in a table, but only one is selected as the primary key. It cannot contain NULL values.

📌 Download your practice papers: Practice is the only way to master DBMS. Download 5 years of official VNSGU BCA Sem 2 papers from our BCA Sem 2 Papers page, solve them under timed conditions, and then verify your SQL syntax and normalization steps against our solved answer sheets. All resources are free, no registration required.

Keep reading more exam guides

All Blog Posts