In what case relational calculus differ from relational algebra, and in what sense are they similar?
Relational algebra is a procedural language and Relational calculus is non-procedural language. In relational algebra user has to specify, what is required, and what the steps to obtain the required output are whereas in relational calculus user has to specify what is needed but does not have to specify how to obtain the result. Both, relational calculus and relational algebra are formal language. They are the basis on which other, higher level data manipulation languages for relational calculus. Relational algebra have operators like join, union, intersection, division, projection, selection etc. but relation calculus has tuples and domain oriented expressions. Expressive power of both relational algebra and relational calculus is equivalent i.e. any query that can be expressed in relational algebra can also be expressed in relational calculus. Relational algebra is relatively easier to manipulate than relational calculus. Relational algebra are more powerful than the relational calculus.
Rational Algebra
|
Relational Calculus
|
It is a procedural language.
|
It is non-procedural language.
|
We specify the sequence of operation to perform a
particular query.
|
We specify only what is required without bothering
about the sequence of operations to perform query.
|
Evaluation of the query depends upon the order of
operation.
|
Does not depend on the order of the operations.
|
It is closely related to programming language.
|
It is closely related to natural language.
|
It can be directly implemented.
|
It needs to be first converted into relational algebra
before it can be implemented.
|
The queries are domain independent.
|
The queries are domain dependent.
|
Comments
Post a Comment