--
-- Holds the folder hierarchy, mirroring the structure of the folders in
-- the content repository. Used for navigating through the static
-- pages in a hierarchical manner.
--
CREATE TABLE sp_folders (
--
-- ID of folder.
--
folder_id integer PRIMARY KEY NOT NULL,
--
-- ID of parent folder; null if this is the root folder.
--
parent_id integer,
--
-- Keep track of the package that owns the folder. This is used
-- to avoid conflicts if more than one package is using Static
-- Pages functions.
--
package_id integer,
tree_sortkey varbit(-5),
CONSTRAINT sp_folders_folder_id_fk REFERENCES cr_folders (),
CONSTRAINT sp_folders_folder_id_pk REFERENCES cr_folders (),
CONSTRAINT sp_folders_package_id_fk REFERENCES cr_folders (),
CONSTRAINT sp_folders_parent_id_fk REFERENCES cr_folders (),
CONSTRAINT sp_folders_parent_id_fk REFERENCES apm_packages (),
CONSTRAINT sp_folders_package_id_fk REFERENCES apm_packages (),
CONSTRAINT sp_folders_folder_id_pk REFERENCES apm_packages (),
CONSTRAINT sp_folders_folder_id_fk REFERENCES apm_packages (),
CONSTRAINT sp_folders_parent_id_fk REFERENCES sp_folders (),
CONSTRAINT sp_folders_folder_id_fk REFERENCES sp_folders (),
CONSTRAINT sp_folders_folder_id_pk REFERENCES sp_folders (),
CONSTRAINT sp_folders_package_id_fk REFERENCES sp_folders ()
);
CREATE INDEX sp_folders_package_id_idx ON sp_folders (package_id);
CREATE INDEX sp_folders_parent_id_idx ON sp_folders (parent_id);
CREATE INDEX sp_folders_tree_skey_idx ON sp_folders (tree_sortkey);
CREATE TRIGGER sp_folders_insert_tr BEFORE INSERT FOR EACH ROW EXECUTE PROCEDURE sp_folders_insert_tr (disabled)
CREATE TRIGGER sp_folders_update_tr BEFORE UPDATE FOR EACH ROW EXECUTE PROCEDURE sp_folders_update_tr (disabled)
CREATE TRIGGER RI_ConstraintTrigger_a_342957 AFTER DELETE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_cascade_del (disabled)
CREATE TRIGGER RI_ConstraintTrigger_a_342958 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_noaction_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342964 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342965 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342969 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342970 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_a_342972 AFTER DELETE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_noaction_del (disabled)
CREATE TRIGGER RI_ConstraintTrigger_a_342973 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_noaction_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342974 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342975 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_a_342977 AFTER DELETE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_noaction_del (disabled)
CREATE TRIGGER RI_ConstraintTrigger_a_342978 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_noaction_upd (disabled)
-- Tables with foreign keys that refer to sp_folders:
--sp_extant_folders(sp_folders_folder_id_fk)
--sp_extant_folders(sp_folders_folder_id_pk)
--sp_extant_folders(sp_folders_package_id_fk)
--sp_extant_folders(sp_folders_parent_id_fk)
--sp_folders(sp_folders_folder_id_fk)
--sp_folders(sp_folders_folder_id_pk)
--sp_folders(sp_folders_package_id_fk)
--sp_folders(sp_folders_parent_id_fk)
--static_pages(sp_folders_folder_id_fk)
--static_pages(sp_folders_folder_id_pk)
--static_pages(sp_folders_package_id_fk)
--static_pages(sp_folders_parent_id_fk)
-- Table size: 8,192 bytes
-- Table rows: 138
Tables: