What is Database Testing? (Simple Definition + Why It’s Used)
Database testing is the process of validating data stored in a database to ensure it is accurate, complete, consistent, and reliable after operations like insert, update, delete, or migration.
When it comes to database migration testing, the focus is on verifying that data moved from a source database to a target database remains correct, without loss, duplication, or corruption.
In simple terms:
Data before migration = Data after migration (with correct structure and rules).
That’s why database migration testing interview questions are commonly asked in projects involving:
- Legacy system upgrades
- On-premise to cloud migration
- Database version upgrades
- Platform changes (Oracle → MySQL, SQL Server → PostgreSQL)
Database Migration Testing Workflow (Step-by-Step)
1. Understand Source & Target Databases
- Database type (Oracle, MySQL, SQL Server, PostgreSQL)
- Schemas and tables
- Data types
- Constraints
2. Schema Validation
| Item | What to Validate |
| Tables | Same count |
| Columns | Same name & data type |
| Indexes | Created properly |
| Constraints | PK, FK, Unique |
3. Data Validation (Core Step)
- Record count comparison
- Row-by-row data comparison
- Null & default values
- Precision & scale validation
4. CRUD Validation After Migration
- Insert new data
- Update existing records
- Delete records
- Verify behavior on target DB
Types of Database Migration Testing
- Schema Migration Testing
- Data Migration Testing
- Functional Database Testing
- Performance Validation
- Security & Access Validation
- Rollback & Recovery Testing
Database Migration Testing Interview Questions (100+ Q&A)
Basic Database Migration Testing Interview Questions
1. What is database migration testing?
Database migration testing validates that data moved from source to target database is accurate, complete, and consistent.
2. Why is database migration testing required?
To prevent data loss, corruption, mismatches, and business failures after migration.
3. What are common database migration scenarios?
- On-premise to cloud
- DB version upgrade
- Legacy to modern DB
- Vendor change (Oracle → PostgreSQL)
4. What is source database?
The database from which data is migrated.
5. What is target database?
The database to which data is migrated.
6. What are key risks in database migration?
- Data loss
- Data truncation
- Constraint mismatch
- Performance degradation
7. What is schema migration?
Migration of tables, columns, indexes, and constraints.
8. What is data migration?
Migration of actual records/rows.
9. What is backward compatibility testing?
Ensuring migrated DB still supports existing application logic.
10. What tools are used for database migration?
Flyway, Liquibase, AWS DMS, Azure Data Factory, custom SQL scripts.
SQL Interview Questions for Migration Testing (Validation Focus)
11. How do you compare record count after migration?
SELECT COUNT(*) FROM source_db.users;
SELECT COUNT(*) FROM target_db.users;
12. How do you validate column-level data?
SELECT user_id, email FROM source_db.users
MINUS
SELECT user_id, email FROM target_db.users;
13. How do you check NULL value issues?
SELECT COUNT(*) FROM users WHERE email IS NULL;
14. How do you validate data truncation?
SELECT LENGTH(name) FROM users WHERE LENGTH(name) > 50;
15. How do you validate numeric precision?
SELECT amount FROM payments WHERE amount != ROUND(amount,2);
SELECT, WHERE, ORDER BY Migration Questions
16. Why SELECT is important in migration testing?
Used to validate data correctness post migration.
SELECT * FROM orders WHERE status=’COMPLETED’;
17. How to validate filtered data migration?
SELECT COUNT(*) FROM orders WHERE created_date >= ‘2024-01-01’;
18. How to check sorting mismatch?
SELECT * FROM users ORDER BY created_date DESC;
19. How to validate duplicate data after migration?
SELECT email, COUNT(*)
FROM users
GROUP BY email
HAVING COUNT(*) > 1;
20. How do you validate deleted records were not migrated?
SELECT * FROM users WHERE is_deleted = 1;
JOIN-Based Migration Testing Interview Questions
21. Why JOINs are important in migration testing?
To validate relational data integrity.
22. INNER JOIN Validation Example
SELECT o.order_id, u.user_id
FROM orders o
INNER JOIN users u
ON o.user_id = u.user_id;
23. How to validate orphan records?
SELECT o.order_id
FROM orders o
LEFT JOIN users u
ON o.user_id = u.user_id
WHERE u.user_id IS NULL;
24. What is foreign key validation in migration?
Ensuring child records reference valid parent records.
25. What happens if FK constraints are disabled during migration?
Orphan data issues may occur.
GROUP BY & HAVING in Migration Testing
26. Why GROUP BY is used?
To validate aggregated data.
SELECT user_id, COUNT(*)
FROM orders
GROUP BY user_id;
27. HAVING clause example
SELECT user_id, COUNT(*)
FROM orders
GROUP BY user_id
HAVING COUNT(*) > 10;
28. Where vs Having in migration testing
| WHERE | HAVING |
| Row filter | Group filter |
Indexing & Performance Migration Questions
29. Why index validation is important after migration?
Missing indexes cause performance degradation.
30. How to validate indexes exist?
SHOW INDEX FROM users;
31. How do you validate query performance post migration?
EXPLAIN SELECT * FROM users WHERE email=’test@mail.com’;
Stored Procedures & Triggers in Migration Testing
32. Why stored procedures need testing after migration?
Syntax or logic may break across DB engines.
33. Stored Procedure Validation Example
CALL getUserDetails(101);
34. What is trigger migration testing?
Ensuring triggers execute correctly after migration.
35. Trigger Validation Example
INSERT INTO orders VALUES (101, ‘NEW’);
SELECT * FROM audit_logs WHERE order_id=101;
Scenario Based Database Migration Testing Interview Questions (20)
Scenario 1: Record count matches but data is wrong
Validate column-level comparison.
Scenario 2: Date values changed format
Check timezone & datatype conversion.
Scenario 3: Decimal values rounded
Validate precision mismatch.
Scenario 4: Child records missing
Check FK migration order.
Scenario 5: Performance slower after migration
Validate missing indexes.
Scenario 6: Duplicate records created
Check migration script logic.
Scenario 7: NULL values introduced
Validate default constraints.
Scenario 8: Triggers not firing
Validate trigger recreation.
Scenario 9: Stored procedures failing
Validate syntax differences.
Scenario 10: Rollback required
Validate backup & restore.
Real-Time Database Migration Use Cases
1. Banking Domain
- Account balance migration
- Transaction history
- Regulatory audit data
2. Healthcare Domain
- Patient records
- Medical history
- Compliance validation
3. E-Commerce Domain
- Orders & payments
- Inventory data
- Customer profiles
Common Mistakes Testers Make in Migration Testing
❌ Only validating record count
❌ Ignoring data type conversion
❌ Skipping FK & JOIN checks
❌ Not validating performance
❌ No rollback testing
Quick Revision Sheet (Last-Minute Prep)
- Source vs target comparison
- Record count validation
- Column-level data checks
- JOIN & FK validation
- Index & performance checks
- Stored procedures & triggers
- Rollback strategy
FAQs (Google Featured Snippets)
Q1. What are common database migration testing interview questions?
They focus on data comparison, schema validation, SQL queries, joins, constraints, and real-time migration scenarios.
Q2. Is SQL mandatory for database migration testing?
Yes. Strong SQL knowledge is mandatory.
Q3. What is most critical in migration testing?
Data accuracy, completeness, and integrity.
