|
|
Towards a Logical Semantics for Referential Actions in SQL
Bertram Ludäscher
Wolfgang May
Joachim Reinert
Department of Computer Science
University of Kaiserslautern
P.O.Box 3049, 67653 Kaiserslautern, Germany
e-mail: haerder@informatik.uni-kl.de
Full paper (postscript version, compressed by gzip)
Abstract
We investigate a logical semantics which unambiguously specifies the meaning of
SQL-like referential actions of the form ON DELETE CASCADE and ON DELETE
RESTRICT. The semantics is given by a translation of referential actions into
logical rules. The proposed semantics is less restrictive than the standard SQL
semantics, yet preserves all referential integrity constraints. First, a
preliminary set of rules is introduced which rejects a set of user requests if
a single request is rejected. Subsequently, a refined translation is presented
using Statelog, a state-oriented Datalog extension which allows to define
active and deductive rules within a unified framework. We show that our
semantics yields the maximal admissible subset of a given set of user requests.
Apart from the Statelog formalization, a three-valued formalization based on the
well-founded semantics and an equivalent game-theoretic specification are
presented, which give further insight into the problem of ambiguity of triggers.
Published in: 6th Workshop on Foundations and Languages for Data and
Objects, Dagstuhl, Otto-von-Guericke-Universität Magdeburg, Fakultät
für Informatik, Preprint Nr. 4, September 1996.
|