actor.stat_cat_entry

User Statistical Catagory Entries

Local data collected about Users is placed into a Statistical Catagory. Each library can create entries into any of its own stat_cats, its ancestors' stat_cats, or its descendants' stat_cats.

Data-Modifying Triggers: This table has BEFORE ROW trigger(s) that modify row data before write. Values you INSERT or UPDATE may differ from what is actually stored. See the Triggers section below.

Cascading Deletes: Deleting rows from this table will cascade to: actor.org_unit, actor.stat_cat.

Deferrable Constraints: The following FK constraints are deferrable — they are checked at transaction end, not statement end: actor_stat_cat_entry_owner_fkey, actor_stat_cat_entry_stat_cat_fkey.

Trigger Side Effects: Writing to this table automatically triggers writes to other tables:

Columns

Column Type Nullable Default Notes

id PK

integer

No

nextval('actor.stat_cat_entry_id_seq'::regclass)

stat_cat FK

integer

No

actor.stat_cat(id)

owner FK

integer

No

actor.org_unit(id)

value

text

No

Primary Key

(id)

Foreign Keys

Column(s) References On Delete On Update Deferrable Constraint

owner

actor.org_unit(id)

CASCADE

NO ACTION

DEFERRED

actor_stat_cat_entry_owner_fkey

stat_cat

actor.stat_cat(id)

CASCADE

NO ACTION

DEFERRED

actor_stat_cat_entry_stat_cat_fkey

Unique Constraints

  • sce_once_per_owner: (stat_cat, owner, value)

Indexes

Index Method Definition

stat_cat_entry_pkey PK

btree

CREATE UNIQUE INDEX stat_cat_entry_pkey ON actor.stat_cat_entry USING btree (id)

sce_once_per_owner UNIQUE

btree

CREATE UNIQUE INDEX sce_once_per_owner ON actor.stat_cat_entry USING btree (stat_cat, owner, value)

Triggers

Trigger Timing Event Level Function

actor_stat_cat_entry_delete_trigger

AFTER

DELETE

ROW

actor.stat_cat_entry_usr_map_cascade_delete()

actor_stat_cat_entry_update_trigger

BEFORE

UPDATE

ROW

actor.stat_cat_entry_usr_map_cascade_update()

Trigger Bodies

actor_stat_cat_entry_delete_trigger

Function: actor.stat_cat_entry_usr_map_cascade_delete()
Timing: AFTER DELETE ROW

BEGIN
    DELETE FROM actor.stat_cat_entry_usr_map
    WHERE stat_cat_entry = OLD.value
        AND stat_cat = OLD.stat_cat;

    RETURN NEW;
END;

actor_stat_cat_entry_update_trigger

Function: actor.stat_cat_entry_usr_map_cascade_update()
Timing: BEFORE UPDATE ROW

This trigger modifies the row before it is written (returns a modified NEW).

BEGIN
    UPDATE actor.stat_cat_entry_usr_map
    SET stat_cat_entry = NEW.value
    WHERE stat_cat_entry = OLD.value
        AND stat_cat = OLD.stat_cat;

    RETURN NEW;
END;

Referenced By

The following tables have foreign keys pointing to actor.stat_cat_entry (1 referencing table(s)):

Table Referencing Column(s) Referenced Column(s) Constraint

actor.stat_cat_entry_default

stat_cat_entry

id

stat_cat_entry_default_stat_cat_entry_fkey