Extending a Relational Database with Deferred Referential Integrity Checking and Intelligent Joins
Interactive use of relational database management systems (DBMS) requires a user to be knowledgeable about the semantics of the application represented in the database. In many cases, however, users are not trained in the application field and are not DBMS experts. Two categories of functionality are problematic for such users: (1) updating a database without violating integrity constraints imposed by the domain, and (2) using join operations to retrieve data from more than one relation. The authors have been conducting research to help an uninformed or casual user interact with a relational DBMS. This paper describes two capabilities to aid an interactive database user who is neither an application specialist nor a DBMS expert. The authors have developed deferred Referential Integrity Checking (RIC) and Intelligent Join (IJ), which extend the operations of a relational DBMS. These facilities are made possible by explicit representation of database semantics combined with a relational schema. Deferred RIC is a static validation procedure that checks uniqueness of tuples, non-null keys, uniqueness of keys, and inclusion dependencies. IJ allows a user to identify only the "target" data which is to be retrieved, without the need to additionally specify "join clauses." This paper presents the motivation for these facilities, describes the features of each, and presents examples of their use.