What Is Database Testing?
Database testing is the process of validating backend data stored in a database to ensure it is accurate, consistent, complete, and aligned with business requirements. In manual testing, testers directly use SQL queries (without automation scripts) to verify whether data created through UI or APIs is correctly stored, updated, and deleted in the database.
In interviews, database interview questions for manual testing are asked to check whether a tester can:
- Validate backend data independently of UI
- Write correct SQL queries
- Understand table relationships and constraints
- Handle real-time data scenarios
Why Database Testing Is Used in Manual Testing
- To ensure UI data matches database data
- To detect duplicate, missing, or incorrect records
- To validate business rules at DB level
- To ensure data integrity and transactions
Step 1: Understand Business Requirements
- What data is created/updated/deleted?
- Which fields are mandatory?
- What default values should be applied?
Step 2: Schema & Table Validation
- Table names and column names
- Data types and lengths
- Default values
Step 3: Constraint Validation
- Primary Key
- Foreign Key
- NOT NULL
- UNIQUE
Step 4: CRUD Validation
| Operation | Purpose | SQL Used |
| Create | Insert new data | INSERT |
| Read | Fetch data | SELECT |
| Update | Modify data | UPDATE |
| Delete | Remove data | DELETE |
Step 5: Advanced Validation (Manual Level)
- JOIN validation
- Index checks (basic)
- Stored procedures & triggers
- Transactions and rollback
Database Interview Questions for Manual Testing (100+ Q&A)
Basic Database Testing Interview Questions (1–20)
1. What is database testing?
Database testing validates backend data using SQL queries to ensure accuracy and integrity.
2. Why is database testing important for manual testers?
Because UI validation alone cannot guarantee correct data storage.
3. What skills are required for manual database testing?
- SQL knowledge
- Understanding of tables & relationships
- Business logic understanding
4. What is CRUD?
- Create – INSERT
- Read – SELECT
- Update – UPDATE
- Delete – DELETE
5. What is a primary key?
A column that uniquely identifies each record.
6. What is a foreign key?
A column that creates a relationship between two tables.
7. What is data integrity?
Accuracy and consistency of data across tables.
8. What is normalization?
Reducing data redundancy.
9. What is denormalization?
Adding redundancy for performance.
10. What is a schema?
A logical container for database objects.
11. What is NULL?
Represents missing or unknown data.
12. What is a constraint?
Rules applied to table columns.
13. Types of constraints?
PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL.
14. What is a view?
A virtual table created using a query.
15. What is an index?
Improves query performance.
16. Difference between database and table?
Database contains tables; table contains records.
17. What is a row?
A single record.
18. What is a column?
A field in a table.
19. What is a default value?
Auto-assigned value when no value is provided.
20. What is data validation?
Ensuring stored data matches business rules.
SQL Interview Questions for Manual Testing (21–45)
21. Fetch all records from a table
SELECT * FROM users;
22. Fetch specific columns
SELECT name, email FROM users;
23. Fetch users older than 30
SELECT * FROM users WHERE age > 30;
24. Fetch unique city names
SELECT DISTINCT city FROM customers;
25. Sort records by created date
SELECT * FROM orders ORDER BY created_date DESC;
26. Count total records
SELECT COUNT(*) FROM users;
27. What is GROUP BY?
Groups rows with the same values.
SELECT department, COUNT(*)
FROM employees
GROUP BY department;
28. What is HAVING?
Filters grouped data.
SELECT department, COUNT(*)
FROM employees
GROUP BY department
HAVING COUNT(*) > 5;
29. Difference between WHERE and HAVING?
| WHERE | HAVING |
| Filters rows | Filters grouped data |
| Used before GROUP BY | Used after GROUP BY |
30. What is BETWEEN?
SELECT * FROM employees
WHERE salary BETWEEN 30000 AND 60000;
JOIN-Based Database Interview Questions (46–65)
46. What is a JOIN?
Combines data from multiple tables.
47. Types of JOINs
- INNER JOIN
- LEFT JOIN
- RIGHT JOIN
- FULL JOIN
48. INNER JOIN example
SELECT o.order_id, c.name
FROM orders o
INNER JOIN customers c
ON o.customer_id = c.id;
49. LEFT JOIN example
SELECT c.name, o.order_id
FROM customers c
LEFT JOIN orders o
ON c.id = o.customer_id;
50. Scenario: Find customers with no orders
SELECT c.id
FROM customers c
LEFT JOIN orders o
ON c.id = o.customer_id
WHERE o.id IS NULL;
51. What is a self JOIN?
Joining a table with itself.
52. Why JOINs are important in manual testing?
To validate relationships and data consistency.
Indexes, Stored Procedures & Triggers (66–85)
66. What is an index?
Improves query performance.
67. Why should manual testers know about indexes?
To understand slow queries and performance issues.
68. What is a stored procedure?
Pre-compiled SQL logic stored in the database.
69. Stored procedure example
CREATE PROCEDURE getUser(IN uid INT)
BEGIN
SELECT * FROM users WHERE id = uid;
END;
70. How do manual testers test stored procedures?
- Provide input values
- Verify output
- Check error handling
71. What is a trigger?
Automatically executes SQL on INSERT/UPDATE/DELETE.
72. Trigger example
CREATE TRIGGER audit_insert
AFTER INSERT ON orders
FOR EACH ROW
INSERT INTO audit_log VALUES (NEW.id, NOW());
73. Why triggers are tested?
To ensure audit and log entries are created.
Scenario Based Database Interview Questions (86–110)
86. Scenario: Validate user registration
- Record inserted
- Default values applied
SELECT * FROM users WHERE email=’test@gmail.com’;
87. Scenario: Validate update operation
SELECT address FROM users WHERE id=101;
88. Scenario: Validate delete operation
SELECT * FROM users WHERE id=101;
89. Scenario: Validate soft delete
SELECT * FROM users WHERE is_active=’N’;
90. Scenario: Detect duplicate records
SELECT email, COUNT(*)
FROM users
GROUP BY email
HAVING COUNT(*) > 1;
91. Scenario: Validate order and payment mapping
SELECT o.id, p.amount
FROM orders o
JOIN payments p
ON o.id = p.order_id;
92. Scenario: Validate rollback
- Force failure
- Ensure no partial data saved
Real-Time Use Cases
🏦 Banking
- Account creation validation
- Transaction consistency
- Balance updates
🏥 Healthcare
- Patient data accuracy
- Medical history integrity
- Compliance checks
🛒 E-commerce
- Order vs payment reconciliation
- Inventory updates
- Refund validation
Common Mistakes Manual Testers Make
- Validating only UI data
- Ignoring NULL and default values
- Skipping rollback testing
- Not checking relationships
- Missing negative scenarios
Quick Revision Sheet
✔ SELECT, WHERE, ORDER BY
✔ JOIN types
✔ GROUP BY, HAVING
✔ CRUD operations
✔ Index basics
✔ Stored procedures
✔ Triggers
✔ Transactions
FAQs – Database Interview Questions for Manual Testing
Q1. Is SQL mandatory for manual testers?
Yes, basic to intermediate SQL is mandatory.
Q2. How much SQL is enough for manual testing interviews?
SELECT, JOIN, GROUP BY, HAVING, and basic queries.
Q3. Are scenario-based questions asked for manual testers?
Yes, real-time SQL validation interview questions are very common.
