RDBMS
Concepts - Basics & Interview Questions
Concepts - Basics & Interview Questions
mavvsn reddy
A relational database management system (RDBMS)
is a database management system (DBMS) that
is a database management system (DBMS) that
utilizes a relational database
model to hold the data used in the application. Short for Relational Database
model to hold the data used in the application. Short for Relational Database
Management System, RDBMS refers to a
relational database plus supporting software for managing users
relational database plus supporting software for managing users
and processing SQL queries,
performing backups/restores and associated tasks. RDBMS usually include an
performing backups/restores and associated tasks. RDBMS usually include an
API so that developers can
write programs that use them. Typical RDBMS include Microsoft Access,
write programs that use them. Typical RDBMS include Microsoft Access,
Microsoft SQL Server,
Sybase, IBM DB2, Oracle, Ingres, MySQL, Postgresql and many more.
Sybase, IBM DB2, Oracle, Ingres, MySQL, Postgresql and many more.
These RDBMS Fundamentals contain the
Basics of RDBMS Concepts to help you prepare for the Interview
Basics of RDBMS Concepts to help you prepare for the Interview
of a DBA. Please feel free
to share these RDBMS Interview Questions and Answers with your friends.
to share these RDBMS Interview Questions and Answers with your friends.
RDBMS
Concepts & Interview Questions
Concepts & Interview Questions
1. What is a Database?
A database is a logically coherent collection
of data with some inherent meaning, representing some aspect
of data with some inherent meaning, representing some aspect
of real world and which is
designed, built and populated with data for a specific purpose.
designed, built and populated with data for a specific purpose.
2. What is DBMS?
It is a collection of programs that enables
user to create and maintain a database. In other words it is
user to create and maintain a database. In other words it is
general-purpose software that provides
the users with the processes of defining, constructing and
the users with the processes of defining, constructing and
manipulating the database for various
applications.
applications.
3. What is a Database
system?
system?
The database and DBMS software together is
called as Database system.
called as Database system.
4. Advantages of DBMS?
Redundancy is controlled. Unauthorised
access is restricted. Providing multiple user interfaces. Enforcing
access is restricted. Providing multiple user interfaces. Enforcing
integrity constraints. Providing backup and recovery.
5. Disadvantage in File
Processing System?
Processing System?
• Data redundancy & inconsistency.
• Difficult in accessing data.
• Data isolation.
• Data integrity.
• Concurrent access is not possible.
• Security Problems.
6. Describe the three
levels of data abstraction?
levels of data abstraction?
The are three levels of
abstraction:
abstraction:
1. Physical level: The lowest level of
abstraction describes how data are stored.
abstraction describes how data are stored.
2. Logical level: The next higher level of
abstraction, describes what data are stored in database and
abstraction, describes what data are stored in database and
what relationship among those
data.
data.
3. View level: The highest level of
abstraction describes only part of entire database.
abstraction describes only part of entire database.
7. Define the
"Integrity Rules"
"Integrity Rules"
There are two Integrity rules.
1. Entity Integrity: States that ?Primary key cannot have NULL value?
2. Referential Integrity: States that ?Foreign Key can be either a NULL value or should be
Primary Key
Primary Key
value of other relation.
8. What is extension and
intension?
intension?
Extension - It is the number of tuples present in a table at any instance. This is time
dependent.
dependent.
Intension - It is a constant value that gives
the name, structure of table and the constraints laid on it.
the name, structure of table and the constraints laid on it.
9. What is System R? What
are its two major subsystems?
are its two major subsystems?
System R was designed and developed over a
period of 1974-79 at IBM San Jose Research Center. It is a
period of 1974-79 at IBM San Jose Research Center. It is a
prototype and its purpose was to
demonstrate that it is possible to build a Relational System that can be used
demonstrate that it is possible to build a Relational System that can be used
in a real life environment
to solve real life problems, with performance at least comparable to that of
existing
to solve real life problems, with performance at least comparable to that of
existing
system.
Its two subsystems are
• Research Storage
• System Relational Data System.
10. How is the data
structure of System R different from the relational structure?
structure of System R different from the relational structure?
Unlike Relational systems in System R
• Domains are not supported
• Enforcement of candidate key uniqueness is
optional
optional
• Enforcement of entity integrity is optional
• Referential integrity is not enforced
11. What is Data
Independence?
Independence?
Data independence means that
?the application is independent of the storage structure and access
strategy
?the application is independent of the storage structure and access
strategy
of data?. In other words, The ability to modify the schema definition in one level
should not affect the schema
should not affect the schema
definition in the next higher level.
Two types of Data Independence are:
1. Physical Data Independence: Modification
in physical level should not affect the logical level.
in physical level should not affect the logical level.
2. Logical Data Independence: Modification in
logical level should affect the view level.
logical level should affect the view level.
NOTE: Logical Data Independence is more
difficult to achieve.
difficult to achieve.
12. What is a view? How it
is related to data independence?
is related to data independence?
A view may be thought of as a virtual table,
that is, a table that does not really exist in its own right but is
that is, a table that does not really exist in its own right but is
instead derived from one or more
underlying base table. In other words, there is no stored file that direct
underlying base table. In other words, there is no stored file that direct
represents the view instead a
definition of view is stored in data dictionary.
definition of view is stored in data dictionary.
Growth and restructuring of base tables is
not reflected in views. Thus the view can insulate users from the
not reflected in views. Thus the view can insulate users from the
effects of restructuring and
growth in the database. Hence accounts for logical data independence.
growth in the database. Hence accounts for logical data independence.
13. What is Data Model?
A collection of conceptual
tools for describing data, data relationships data semantics and constraints.
tools for describing data, data relationships data semantics and constraints.
14. What is E-R model?
E-R model stands for Entity-Relationship
model. This data model is based on real world that consists of basic
model. This data model is based on real world that consists of basic
objects called entities and of
relationship among these objects. Entities are described in a database by a set
relationship among these objects. Entities are described in a database by a set
of attributes.
15. What is Object
Oriented model?
Oriented model?
This model is based on collection of objects.
An object contains values stored in instance variables with in the
An object contains values stored in instance variables with in the
object. An object also contains
bodies of code that operate on the object. These bodies of code are called
bodies of code that operate on the object. These bodies of code are called
methods. Objects that contain
same types of values and the same methods are grouped together into
same types of values and the same methods are grouped together into
classes.
16. What is an Entity?
It is a 'thing' in the real world with an
independent existence.
independent existence.
17. What is an Entity
type?
type?
It is a collection (set) of entities that
have same attributes.
have same attributes.
18. What is an Entity set?
It is a collection of all entities of
particular entity type in the database.
particular entity type in the database.
19. What is an Extension
of entity type?
of entity type?
The collections of entities of a particular
entity type are grouped together into an entity set.
entity type are grouped together into an entity set.
20. What is Weak Entity
set?
set?
An entity set may not have sufficient
attributes to form a primary key, and its primary key compromises of its
attributes to form a primary key, and its primary key compromises of its
partial key and primary key of
its parent entity, then it is said to be Weak Entity set.
its parent entity, then it is said to be Weak Entity set.
21. What is an attribute?
It is a particular property, which describes
the entity.
the entity.
22. What is a Relation Schema and a Relation?
A relation Schema denoted by R(A1, A2, ?, An) is made up of the relation name R and the
list of attributes Ai
list of attributes Ai
that it contains. A relation
is defined as a set of tuples. Let r be the relation
which contains set tuples (t1, t2,
is defined as a set of tuples. Let r be the relation
which contains set tuples (t1, t2,
t3, ..., tn). Each tuple is an ordered
list of n-values t=(v1,v2, ..., vn).
list of n-values t=(v1,v2, ..., vn).
23. What is degree of a
Relation?
Relation?
It is the number of attribute of its relation
schema.
schema.
24. What is Relationship?
It is an association among two or more
entities.
entities.
Relationship Set - The collection (or set)
of similar relationships.
of similar relationships.
Relationship Type - Relationship type
defines a set of associations or a relationship set among a given set
defines a set of associations or a relationship set among a given set
of entity types.
Degree of Relationship
Type - It
is the number of entity type participating.
Type - It
is the number of entity type participating.
25. What is DDL (Data Definition
Language)?
Language)?
A data base schema is specifies by a set of
definitions expressed by a special language called DDL.
definitions expressed by a special language called DDL.
26. What is VDL (View
Definition Language)?
Definition Language)?
It specifies user views and their mappings to
the conceptual schema.
the conceptual schema.
27. What is SDL (Storage
Definition Language)?
Definition Language)?
This language is to specify the internal
schema. This language may specify the mapping between two
schema. This language may specify the mapping between two
schemas.
28. What is Data Storage -
Definition Language?
Definition Language?
The storage structures and access methods
used by database system are specified by a set of definition in a
used by database system are specified by a set of definition in a
special type of DDL called data
storage-definition language.
storage-definition language.
29. What is DML (Data
Manipulation Language)?
Manipulation Language)?
This language that enable
user to access or manipulate data as organised by
appropriate data model.
user to access or manipulate data as organised by
appropriate data model.
• Procedural DML or Low level: DML requires a
user to specify what data are needed and how to get
user to specify what data are needed and how to get
those data.
• Non-Procedural DML or High level: DML
requires a user to specify what data are needed without
requires a user to specify what data are needed without
specifying how to get those data.
30. What is DML Compiler?
It translates DML statements in a query
language into low-level instruction that the query evaluation engine
language into low-level instruction that the query evaluation engine
can understand.
31. What is Query
evaluation engine?
evaluation engine?
It executes low-level instruction generated
by compiler.
by compiler.
32. What is DDL Interpreter?
It interprets DDL statements and record them in tables containing metadata.
33. What is
Record-at-a-time?
Record-at-a-time?
The Low level or Procedural DML can specify
and retrieve each record from a set of records. This retrieve of
and retrieve each record from a set of records. This retrieve of
a record is said to be
Record-at-a-time.
Record-at-a-time.
34. What is Set-at-a-time
or Set-oriented?
or Set-oriented?
The High level or Non-procedural DML can
specify and retrieve many records in a single DML statement.
specify and retrieve many records in a single DML statement.
This retrieve of a record is said to be
Set-at-a-time or Set-oriented.
Set-at-a-time or Set-oriented.
35. What is Relational
Algebra?
Algebra?
It is procedural query language. It consists
of a set of operations that take one or two relations as input and
of a set of operations that take one or two relations as input and
produce a new relation.
36. What is Relational
Calculus?
Calculus?
It is an applied predicate calculus
specifically tailored for relational databases proposed by E.F. Codd. E.g. of
specifically tailored for relational databases proposed by E.F. Codd. E.g. of
languages based on it are DSL
ALPHA, QUEL.
ALPHA, QUEL.
37. How does Tuple-oriented relational calculus differ from
domain-oriented relational calculus?
domain-oriented relational calculus?
The tuple-oriented
calculus uses a tuple variables i.e., variable whose
only permitted values are tuples of that
calculus uses a tuple variables i.e., variable whose
only permitted values are tuples of that
relation. E.g. QUEL
The domain-oriented calculus has domain
variables i.e., variables that range over the underlying domains
variables i.e., variables that range over the underlying domains
instead of over relation. E.g.
ILL, DEDUCE.
ILL, DEDUCE.
38. What is normalization?
It is a process of analysing
the given relation schemas based on their Functional Dependencies (FDs) and
the given relation schemas based on their Functional Dependencies (FDs) and
primary key to achieve the
properties
properties
• Minimizing redundancy
• Minimizing insertion, deletion and update
anomalies.
anomalies.
39. What is Functional
Dependency?
Dependency?
Functional dependency is denoted by X -->
Y between two sets of attributes X and Y that are subsets of R
Y between two sets of attributes X and Y that are subsets of R
specifies a constraint on the
possible tuple that can form a relation state r of R.
The constraint is for any two
possible tuple that can form a relation state r of R.
The constraint is for any two
tuples t1 and t2 in r if t1[X] =
t2[X] then they have t1[Y] = t2[Y]. This means the value of X component of a
t2[X] then they have t1[Y] = t2[Y]. This means the value of X component of a
tuple uniquely determines the
value of component Y.
value of component Y.
40. When is a functional
dependency F said to be minimal?
dependency F said to be minimal?
• Every dependency in F has a single
attribute for its right hand side.
attribute for its right hand side.
• It cannot replace any dependency X -->A in F with a dependency Y--> A where Y is a proper
subset of
subset of
X and still have a set of dependency that is
equivalent to F.
equivalent to F.
• We cannot remove any dependency from F and
still have set of dependency that is equivalent to F.
still have set of dependency that is equivalent to F.
41. What is Multivalued dependency?
Multivalued dependency denoted by
X-->Y specified on relation schema R, where X and Y are both subsets
X-->Y specified on relation schema R, where X and Y are both subsets
of R, specifies the
following constraint on any relation r of R: if two tuples
t1 and t2 exist in r such that t1[X] =
following constraint on any relation r of R: if two tuples
t1 and t2 exist in r such that t1[X] =
t2[X] then t3 and t4 should also exist in r
with the following properties
with the following properties
• t3[x] = t4[X] = t1[X] = t2[X]
• t3[Y] = t1[Y] and t4[Y] = t2[Y]
• t3[Z] = t2[Z] and
t4[Z] = t1[Z]
t4[Z] = t1[Z]
where [Z = (R-(X U Y)) ]
42. What is Lossless join
property?
property?
It guarantees that the spurious tuple generation does not occur with respect to relation
schemas after
schemas after
decomposition.
43. What is 1 NF (Normal
Form)?
Form)?
The domain of attribute must include only
atomic (simple, indivisible) values.
atomic (simple, indivisible) values.
44. What is Fully
Functional dependency?
Functional dependency?
t is based on concept of
full functional dependency. A functional dependency X --> Y is full functional
full functional dependency. A functional dependency X --> Y is full functional
dependency if removal of any
attribute A from X means that the dependency does not hold any more.
attribute A from X means that the dependency does not hold any more.
45. What is 2NF?
A relation schema R is in 2NF if it is in 1NF
and every non-prime attribute A in R is fully
functionally
and every non-prime attribute A in R is fully
functionally
dependent on primary key.
46. What is 3NF?
A relation schema R is in 3NF if it is in 2NF
and for every FD X --> A either of the following is true
and for every FD X --> A either of the following is true
• X is a Super-key of R.
• A is a prime attribute of R.
In other words, if every non prime attribute
is non-transitively dependent on primary key.
is non-transitively dependent on primary key.
47. What is BCNF (Boyce-Codd Normal Form)?
A relation schema R is in BCNF if it is in
3NF and satisfies an additional constraint that for every FD X --> A,
3NF and satisfies an additional constraint that for every FD X --> A,
X must be a candidate key.
48. What is 4NF?
A relation schema R is said to be in 4NF if
for every Multivalued
dependency X --> Y that holds over R, one of
for every Multivalued
dependency X --> Y that holds over R, one of
following is true
• X is subset or equal to (or) XY = R.
• X is a super key.
49. What is 5NF?
A Relation schema R is said to be 5NF if for
every join dependency {R1, R2, ..., Rn} that holds R, one the
every join dependency {R1, R2, ..., Rn} that holds R, one the
following is true
• Ri = R for some i.
• The join dependency is implied by the set
of FD, over R in which the left side is key of R.
of FD, over R in which the left side is key of R.
50. What is a Tuple in RDBMS?
A row in a table is called a tuple of the relation. The number of tuples
in a relation is known as the cardinality
in a relation is known as the cardinality
of the relation. Tuples in a table are unique and can be arranged in any
order.
order.
Thank U friends
Urs
Mavvsn reddy
No comments:
Post a Comment