Ein Beispiel zu Rules in PostgreSQL:

View für Kunden der BibliothekDB erzeugen:

 CREATE OR REPLACE VIEW kundenview AS 
 SELECT person.persnr, person.vorname, person.nachname, kunde.treuepunkte
  FROM kunde
  LEFT JOIN person ON kunde.persnr = person.persnr;

Wenn wir nun eine Funktion zum Updaten des Views erzeugen wollen müssen wir zuerste eine Funktion schreiben (sofern die Rule nicht in einem SQL Statment abgehandelt werden kann):

 CREATE OR REPLACE FUNCTION kundenview_UPDATE(pnew kundenview, pold kundenview)
 RETURNS void AS 
 '       DECLARE
		--NEW kundenview%ROWTYPE;
		--OLD kundenview%ROWTYPE;
        BEGIN
		--NEW := pnew;
		--OLD := pold;

		UPDATE person SET nachname = pnew.nachname, vorname = pnew.vorname
		WHERE person.persnr = pold.persnr;
		UPDATE kunde SET treuepunkte = pnew.treuepunkte
		WHERE kunde.persnr = pold.persnr;
		RETURN NULL;

        END; ' LANGUAGE plpgsql;

Danach können wir eine Rule schreiben die diese Funktion aufruft:

 CREATE OR REPLACE RULE "_UPDATE" AS
    ON UPDATE TO kundenview DO INSTEAD 
    SELECT kundenview_UPDATE(NEW, OLD);