Databases Reference
In-Depth Information
DB, may falsify some integrity constraint. There are several possible ways of
resolving such a conflict [22].
Reject the update.
·
Apply the update and make additional changes in the extensional
DB to make it obey the integrity constraints.
·
Apply the update and ignore the temporary inconsistency.
·
Change the intensional part of the knowledge base (deductive rules
and/or integrity constraints) so that violated constraints are satisfied.
·
All those policies may be reasonable, and the correct choice of a policy for a
particular integrity constraint depends on the precise semantics of the con-
straint and of the DB.
Integrity constraints facilitate program development if the conditions
they state are directly enforced by the DBMS, instead of being handled by
external applications. Therefore, deductive DBMSs should also include some
capability to deal with integrity constraints.
4.2.4 Deductive Versus Relational Databases
Deductive DBs appeared as an extension of the relational ones, since they
made extensive use of intensional information in the form of views and integ-
rity constraints. However, current relational DBs also allow defining views
and constraints. So exactly what is the difference nowadays between a deduc-
tive DB and a relational one?
An important difference relies on the different data definition language
(DDL) used: Datalog in deductive DBs or SQL [23] in most relational DBs.
We do not want to raise here the discussion about which language is more
natural or easier to use. That is a matter of taste and personal background. It
is important, however, to clarify whether Datalog or SQL can define con-
cepts that cannot be defined by the other language. This section compares
the expressive power of Datalog, as defined in Section 4.2.1, with that of
the SQL2 standard. We must note that, in the absence of recursive views,
Datalog is known to be equivalent to relational algebra (see, for instance,
[5, 7, 14]).
Base predicates in deductive DBs correspond to relations. Therefore,
base facts correspond to tuples in relational DBs. In that way, it is not diffi-
cult to see the clear correspondence between the EDB of a deductive DB and
the logical contents of a relational one.
Search WWH ::




Custom Search