DBMS Interview Questions
Are you looking to join an industry as a DBMS developer? Have you prepared yourself to face DBMS interview questions? If not, then dig into some technical insights for DBMS. Database management has become popular more than ever. A set of logically arranged data for a specific purpose is commonly known as Database. A collection of programs, which can be used to create and maintain a database is known as Database Management System or DBMS. It is basically a systematic way of executing a command with data.
The questionnaire for interviews comprises of some basics and advanced level questions from the technical aspect. In the basic category, questions are asked regarding the definition and properties of a database, its advantages over the obsolete file processing system and disadvantages, E-R model, normalization, data definition language, data abstraction levels and so on. Being thorough with the subject can easily fetch you good remarks from the interviewer and will give you an edge over the others. Technical aspects also has advanced questions like interactions catered by the DBMS, extension and intension, system – R, etc., and even these are easy to answer. One may also check on integrity rules and different languages available in DBMS.
If one is through with the basics, half the battle is won. The more the knowledge on the subject, the more easy will it be to crack the DBMS interview questions. There is a vast list of questionnaire available on Google to help you gain confidence before facing the interview panel.
1. What is DBMS?
2. Enlist various types of interactions created by DBMS?
- Data definition
3. What are the features of Database language?
4. What are different relationships existing in database?
- One-to-one– This simple relationship exists among two tables having same rows or columns.
- One-to-many– Two tables connected by a foreign key and a primary key enjoys one-to-many relationship.
- Many-to-many – It is a complex relationship in which many records in one table is connected to many records in another table.
5. State some commands of DDL?
CREATE table command- It defines each column of the table in a unique and distinct manner like name, data type, size, etc.
Syntax: CREATE TABLE [column name] ([column definitions]) [table parameters]
ALTER table command- ALTER is used to make changes and edit the existing table of database. Syntax: ALTER objecttype objectname parameters.
DROP table command – DROP is used for destroying a table and all the recorded data in it. It destroys an existing database. Syntax: DROP objecttype objectname parameters.
6. What are different cursor types?
- Dynamic – it is highly subject to changes while scrolling the cursor in database.
- Static – it doesn’t show any changes while scrolling. It also works on recording of snapshot.
- Keyset – it enables the user to modify the data without displaying the new data.
7. Enlist the types of cursor?
- Implicit cursor– Implicit cursors are automatically created whenever an SQL statement is executed and this happens without the user’s notice.
- Explicit cursor– Explicit cursors are created with the awareness of users. It handles the SQP/PL query in one row and exercises more control over the context area.
8. List few restrictions that are imposed while creating views?
- Only current database can have views. No other database is allowed to have views other than the current database.
- You cannot make any changes in the computed values of any view.
- You cannot apply full text index definitions.
- Temporary views cannot be created and temporary tables cannot have views.
- It is not associated with any default definitions.
- There are integrity constants that define the working of commands such as insert and delete.
- Triggers such as INSTEAD of is associated with views.
9. What is join? Mention its types.
Join depicts the relationship between two or more tables. It combines row of different tables and enables you to select data with reference to data of some other table. There are several joins in database like CROSS JOINs, NATURAL JOINs, EQUI-JOIN, etc. Two most important joins are –
- INNER JOIN – this join returns values that have matching record in both the tables. In this, blank rows are combined in middle.
- OUTER JOIN– it returns all the records of left table. It also returns the values that match with the right table. Blank rows are put in specified side by joining tables in other side.
10. How index hunting contributes in improving the query performance?
- In order to coordinate the study of query with workload, query optimizer is used. It also suggests the best use of queries based on the optimizer.
- Performance of query distribution is checked and monitored to know there effects.
- Turning complex database into small chunks of queries is also suggested.
11. Mention some disadvantages of query?
- There are no indexes in query.
- Triggers and procedures are SET NOCOUNT ON.
- Sometimes joins that are complicated and complex are excessively complied.
- Cursors and tables that are temporary depicts a bad presentation.
12. List few ways to code transactions in an efficient manner?
- It doesn’t require input from users during transactions.
- Transactions must not be opened while browsing through data.
- Make use of lower transaction levels.
- While transacting, least information of data must be accessed.
13. Differentiate between Nested loop, Hash loop and Merge Join.
Nested loop- A nested loop is a loop within a loop. It is an inner loop within an outer body that allows fewer entries. Individual entries in nested loop is processed individually in the inner loop. Example-
.Select col.*, col2.* from coll, col2 where coll.coll=col2.col2; The nested way works in following format- For i in (select*from coll) loop For j in (select*from col2 where col2 = i.coll) loop Results are displayed End of the loop; End of the loop;
For nested loop, first outer (driving) table is identified. Then inner tavle is assigned to the outer table and every row in inner column is accessible from every row of outer table. Nested loop is executed from hash join, inner loop and then outer loop.
Hash join- it is divided into-
- Build- this hash table has in-memory which is present on the smaller table.
- Probe – it is the hash value present in each second row element.
- Sort merge element- it joins two independent sources of data.
It is considered a better option as compared with nested loop when data volume is big. The full operation of hash join can be classified as-
Sort join operation-
Get first row R1 from input1 Get first row R2 from input2 Merge join operation- 'while' command is not used at loop's end. If R1 joins with R2 Next row is got R2 from the input2 Return (R1,R2) else if R1 ,style="". Next row is got from R1 from input1 else next row is got from R2 from input 2 end of the loop.
14. what are the importance of partitioning?
- When rows are in one partition, query performance in such situations is improved.
- It also helps to access large parts of single partition.
- Data which are rarely used can be stored in slower and cheaper storage medium.
15. Define Atomicity and Aggregation.
Atomicity: In database management, atomicity is a concept that assures the users of the incomplete transactions. It takes care of these transactions and the actions related to incomplete transactions are left undone in DBMS.
Aggregation: It aggregates the collected entities and their relationships. In this, information is gathered and expressed in summary form.
16. Enlist various transaction phases.
17. Mention some advantages of using DBMS.
- Data redundancy- this happens when multiple copies of data is stored. With DBMS, data is stored in one structure database and the data is inputted only once.
- No unauthorized access- it discourages unauthorized access and improves data access.
- Supports multiple user interfaces.
- Minimized data inconsistency- In DBMS, data inconsistency is reduced as different versions of same data doesn’t appear in different places.
18. How many types of database language exist?
- DDL– Data Definition Language which includes CREATE, ALTER, DROP.
- DML– Data Manipulation Language which includes SELECT, UPDATE, INSERT, etc.
- DCL– Data Control Language which consists of GRANT and REVOKE.
- TCL– Transaction Control Language such as COMMIT and ROLLBACK.