HPlogo ALLBASE/SQL Advanced Application Programming Guide: HP 3000 MPE/iX Computer Systems > Chapter 6 Using Data Integrity Features

Defining and Dropping View Constraints

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

In contrast to table constraints, unique and referential constraints cannot be defined on a view. A type of check constraint is available with the CREATE VIEW statement. The WITH CHECK OPTION ensures that modifications made through an updatable view satisfy all conditions of the view definition.

The following example defines a view check constraint named DateCheck based on the view definition of the updatable view named RecDB.EventView:

        CREATE VIEW RecDB.EventView

                    (Event,

                     Date)

                 AS

             SELECT RecDB.Event,

                    RecDB.Date

               FROM RecDB.Events

              WHERE Date >= CURRENT_DATE

  WITH CHECK OPTION CONSTRAINT DateCheck

When modifications are made through a view defined WITH CHECK OPTION, the new values must be visible in the view definition. That is, any attempt to change data through such a view must satisfy all conditions in the query specification. If this is not so, the view check is violated, an error is returned, and the statement has no effect.

Note that view check constraints are not deferrable, and a SET CHECK DEFERRED statement does not affect them.

Also note that to drop a view check constraint, you must drop the view and recreate it.

Feedback to webmaster