HPlogo ALLBASE/SQL Database Administration Guide: HP 3000 MPE/iX Computer Systems > Chapter 5 Database Creation and Security

Creating Procedures and Rules

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

Rules and procedures work together to provide a method of enforcing the relationships in a database design without application programming. You create procedures, which are stored in the DBEnvironment; then you create rules that invoke the procedures when certain conditions are met. This section shows how to create simple rules and procedures. For more detailed information, refer to the chapter "Constraints, Procedures and Rules" in the ALLBASE/SQL Reference Manual.

Creating a Procedure

You can create procedures that perform most database operations when fired by a rule or when invoked in ISQL or in an application program. The following example shows how to create procedure PurchDB.RemovePart, which is invoked by the rule described in the following section:

   CREATE PROCEDURE PurchDB.RemovePart (PartNum CHAR(16) NOT NULL)

   AS BEGIN

      DELETE FROM PurchDB.Inventory WHERE PartNumber = :PartNum;

      DELETE FROM PurchDB.SupplyPrice WHERE PartNumber = :PartNum;

   END;


For more detailed information, refer to the "Using Procedures" section of the "Constraints, Procedures, and Rules" chapter in the ALLBASE/SQL Reference Manual and to the "Using Procedures in Application Programs" chapter in the ALLBASE/SQL Advanced Application Programming Guide.

Creating a Rule

You can define rules that operate on specific tables in a database whenever a particular type of data manipulation is performed. The following example shows how to create a rule tied to an update of the PurchDB.Parts table:

   CREATE RULE PurchDB.RemovePart

      AFTER DELETE FROM PurchDB.Parts

      WHERE SUBSTRING(PartNumber,1,4) < > 'XXXX'

      EXECUTE PROCEDURE PurchDB.RemovePart (OLD.PartNumber);


The table on which the rule is defined is PurchDB.Parts. The statement type required to trigger the procedure is the DELETE operation. The condition that must be satisfied in addition to the statement type of DELETE is that the first four characters in PartNumber must not be "XXXX." The procedure to be executed is PurchDB.RemovePart.

Feedback to webmaster