Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Granted Roles:
    1. Connect
  2. System Privileges:
    1. Advisor
    2. Alter session
    3. Create Credential
    4. Create Database Link
    5. Create Job
    6. Create Procedure
    7. Create Public Synonym
    8. Create Sequence
    9. Create Session
    10. Create Synonym
    11. Create Table
    12. Create Trigger
    13. Create Type
    14. Create View
    15. Create Any Procedure
    16. Debug Connect Session
    17. Drop Public Synonym
    18. Select Any Dictionary
    19. Select Any Table
  3. Quotas
    1. LABWARE GEODESC
    2. LABWAREIDX GEODESCIDX

2. Run DDL to create project tables, sequences, and triggers

...

Code Block
languagesql
titleOracle DDL for a GEODESC project (aka GEODPnnn)
collapsetrue
/* Establish the schema account first.
   GEODESC project schemas own DB objects, therefore must have the privileges to manage them
*/
-- Examples: GEODP397, GEODP398, GEODPTST360, GEODP_TST123, GEODP999, etc.
define xschema=GEODP395

/* Sequences */
CREATE SEQUENCE &&xschema..P_COLUMNS_COLKEY_SEQ MINVALUE 0 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE GLOBAL ;
CREATE SEQUENCE &&xschema..P_TEMPLATES_TPKEY_SEQ MINVALUE 0 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE GLOBAL ;
CREATE SEQUENCE &&xschema..P_WORKINGSET_DATA_ROWKEY_SEQ MINVALUE 0 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE GLOBAL ;
CREATE SEQUENCE &&xschema..P_WORKINGSET_WSKEY_SEQ MINVALUE 0 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE GLOBAL ;


/* Tables, constraints, triggers, indexes */
--------------------------------------------------------
--  DDL for Table P_COLUMNS
--------------------------------------------------------
CREATE TABLE &&xschema..P_COLUMNS
( "COLKEY" NUMBER(38,0), 
  "TPKEY" NUMBER(38,0), 
  "TYPE" VARCHAR2(20 BYTE), 
  "HEADER" VARCHAR2(200 BYTE), 
  "JSONHEADER" VARCHAR2(4000 BYTE), 
  "JSONDISPLAY" VARCHAR2(4000 BYTE), 
  "JSONTMLOCKS" VARCHAR2(1000 BYTE), 
  "JSONCAPLOCKS" VARCHAR2(4000 BYTE), 
  "SORTORDER" NUMBER(4,0), 
  "IGNORE_FLAG" VARCHAR2(5 BYTE), 
  "INVALID_FLAG" VARCHAR2(5 BYTE), 
  "JSONKEYWORD" VARCHAR2(4000 BYTE), 
  "COMMENTS" VARCHAR2(1000 BYTE), 
  "JSONENTRY" CLOB
) TABLESPACE "GEODESC" 
  LOB ("JSONENTRY") STORE AS SECUREFILE (TABLESPACE "GEODESC")
;

COMMENT ON COLUMN &&xschema..P_COLUMNS.HEADER IS 'unique within project';
COMMENT ON COLUMN &&xschema..P_COLUMNS.JSONCAPLOCKS IS 'locks used in capture sheet as defined in TM';

--------------------------------------------------------
--  DDL for Index P_COLUMNS_PK
--------------------------------------------------------
CREATE UNIQUE INDEX &&xschema..P_COLUMNS_PK ON &&xschema..P_COLUMNS ("COLKEY") 
TABLESPACE "GEODESCIDX" ;

--------------------------------------------------------
--  DDL for Trigger P_COLUMNS_COLKEY_TRG
--------------------------------------------------------
CREATE OR REPLACE EDITIONABLE TRIGGER &&xschema..P_COLUMNS_COLKEY_TRG 
before insert on &&xschema..P_COLUMNS
for each row 
  WHEN (new.colkey < 0 or new.colkey is null)
begin
  select &&xschema..P_COLUMNS_COLKEY_SEQ.nextval into :new.colkey from dual;
end;
/
ALTER TRIGGER &&xschema..P_COLUMNS_COLKEY_TRG ENABLE;

--------------------------------------------------------
--  Constraints for Table P_COLUMNS
--------------------------------------------------------
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_JSONENTRY" CHECK (JSONENTRY IS JSON) ENABLE;
ALTER TABLE &&xschema..P_COLUMNS MODIFY ("COLKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_PK" PRIMARY KEY ("COLKEY") USING INDEX &&xschema..P_COLUMNS_PK  ENABLE;
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_JSONHEADER" CHECK (JSONHEADER IS JSON) ENABLE;
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_JSONDISPLAY" CHECK (JSONDISPLAY IS JSON) ENABLE;
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_JSONKEYWORD" CHECK (JSONKEYWORD IS JSON) ENABLE;
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_JSONCAPLOCKS" CHECK (JSONCAPLOCKS IS JSON) ENABLE;
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_JSONTMLOCKS" CHECK (JSONTMLOCKS IS JSON) ENABLE;
ALTER TABLE &&xschema..P_COLUMNS MODIFY ("TYPE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_COLUMNS MODIFY ("HEADER" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_COLUMNS MODIFY ("TPKEY" NOT NULL ENABLE);


--------------------------------------------------------
--  DDL for Table P_DATA
--------------------------------------------------------
CREATE TABLE &&xschema..P_DATA 
( "TPKEY" NUMBER(38,0), 
  "LIMSHOLE" NUMBER(38,0), 
  "CORE" VARCHAR2(20 BYTE), 
  "CHANGED_ON" TIMESTAMP (6), 
  "CHANGED_BY" VARCHAR2(100 BYTE), 
  "JSONDATA" CLOB
) TABLESPACE "GEODESC" 
  LOB ("JSONDATA") STORE AS SECUREFILE ( TABLESPACE "GEODESC" )
;

--------------------------------------------------------
--  DDL for Index P_DATA_PK_IDX1
--------------------------------------------------------
CREATE INDEX &&xschema..P_DATA_PK_IDX1 ON &&xschema..P_DATA ("LIMSHOLE", "CORE") 
TABLESPACE "GEODESC" ;

--------------------------------------------------------
--  DDL for Index P_DATA_PK1
--------------------------------------------------------
CREATE UNIQUE INDEX &&xschema..P_DATA_PK1 ON &&xschema..P_DATA ("TPKEY", "LIMSHOLE", "CORE") 
TABLESPACE "GEODESC" ;

--------------------------------------------------------
--  Constraints for Table P_DATA
--------------------------------------------------------
ALTER TABLE &&xschema..P_DATA MODIFY ("TPKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_DATA MODIFY ("LIMSHOLE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_DATA MODIFY ("CORE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_DATA MODIFY ("JSONDATA" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_DATA ADD CONSTRAINT "JSONDATA_JSON_CONSTRAINT" CHECK (JSONDATA IS JSON) ENABLE;


--------------------------------------------------------
--  DDL for Table P_LIST_VALUES
--------------------------------------------------------
CREATE TABLE &&xschema..P_LIST_VALUES 
( "COLKEY" NUMBER(38,0), 
  "FIRSTORDER" VARCHAR2(100 BYTE), 
  "SECONDORDER" VARCHAR2(100 BYTE), 
  "THIRDORDER" VARCHAR2(100 BYTE), 
  "AVALUE" VARCHAR2(100 BYTE), 
  "COMMENTS" VARCHAR2(4000 BYTE), 
  "RANK" NUMBER(3,0), 
  "SORTORDER" NUMBER(4,0), 
  "VLKEY" NUMBER(38,0)
) TABLESPACE "GEODESC" ;

--------------------------------------------------------
--  Constraints for Table P_LIST_VALUES
--------------------------------------------------------
ALTER TABLE &&xschema..P_LIST_VALUES MODIFY ("SORTORDER" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_LIST_VALUES MODIFY ("COLKEY" NOT NULL ENABLE);


--------------------------------------------------------
--  DDL for Table P_TAXA
--------------------------------------------------------
CREATE TABLE &&xschema..P_TAXA 
( "COLKEY" NUMBER(38,0), 
  "TAXKEY" NUMBER(38,0), 
  "FOSSIL_GROUP" VARCHAR2(100 BYTE), 
  "GENUS" VARCHAR2(200 BYTE), 
  "SUBSPECIES_MOD" VARCHAR2(20 BYTE), 
  "SPECIES" VARCHAR2(200 BYTE), 
  "SPECIES_MOD" VARCHAR2(20 BYTE), 
  "FOSSIL_SIZE" VARCHAR2(20 BYTE), 
  "SUFFIX" VARCHAR2(20 BYTE), 
  "ADDED_TEXT" VARCHAR2(200 BYTE), 
  "REFERENCE" VARCHAR2(1000 BYTE), 
  "SENSU_REFERENCE" VARCHAR2(1000 BYTE), 
  "AGE" VARCHAR2(200 BYTE), 
  "MARKER_SPECIES" VARCHAR2(200 BYTE), 
  "GEO_REGION" VARCHAR2(200 BYTE), 
  "KEYWORDS" VARCHAR2(2000 BYTE), 
  "SUBSPECIES" VARCHAR2(200 BYTE), 
  "FAMILY_GROUP" VARCHAR2(100 BYTE), 
  "MODIFIED" VARCHAR2(20 BYTE)
) TABLESPACE "GEODESC" ;

--------------------------------------------------------
--  DDLConstraints for IndexTable P_TAXA_PK
--------------------------------------------------------
CREATEALTER UNIQUE INDEXTABLE &&xschema..P_TAXA_PK ON MODIFY ("COLKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TAXA MODIFY ("TAXKEY" NOT NULL ENABLE) 
TABLESPACE "GEODESCIDX" ;

--------------------------------------------------------
--  Constraints for Table P_TAXA
--------------------------------------------------------
ALTER TABLE &&xschema..P_TAXA MODIFY ("COLKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TAXA MODIFY ("TAXKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TAXA MODIFY ("FOSSIL_GROUP" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TAXA ;
ALTER TABLE &&xschema..P_TAXA MODIFY ("FOSSIL_GROUP" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TAXA MODIFY ("MODIFIED" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TAXA ADD CONSTRAINT "P_TAXA_PK" PRIMARY KEY ("TAXKEY") USING INDEX &&xschema..P_TAXA_PK  ENABLE;


--------------------------------------------------------
--  DDL for Table P_TEMPLATES
--------------------------------------------------------
CREATE TABLE &&xschema..P_TEMPLATES 
( "TPKEY" NUMBER(38,0), 
  "TYPECODE" VARCHAR2(50 BYTE), 
  "OBJECTIVE" VARCHAR2(50 BYTE), 
  "SCALE" VARCHAR2(50 BYTE), 
  "EXTENSION" VARCHAR2(200 BYTE), 
  "ALLOWED_EXP" VARCHAR2(4000 BYTE), 
  "OFFSET_FLAG" VARCHAR2(5 BYTE) DEFAULT 'T', 
  "SECTION_FLAG" VARCHAR2(5 BYTE) DEFAULT 'T', 
  "SAMPLE_TYPES" VARCHAR2(4000 BYTE), 
  "PERMISSION" VARCHAR2(5 BYTE) DEFAULT 'T', 
  "CHANGED_BY" VARCHAR2(100 BYTE), 
  "CHANGED_ON" TIMESTAMP (6) DEFAULT SYSTIMESTAMP, 
  "IGNORE_FLAG" VARCHAR2(5 BYTE), 
  "INVALID_FLAG" VARCHAR2(5 BYTE), 
  "SAMPLE_GROUP" VARCHAR2(5 BYTE) DEFAULT 'L', 
  "HEADER_HEIGHT" NUMBER(38,0) DEFAULT 120, 
  "ROW_HEIGHT" NUMBER(38,0) DEFAULT 22, 
  "PROJECT" VARCHAR2(50 BYTE)
) TABLESPACE "GEODESC" ;

COMMENT ON COLUMN &&xschema..P_TEMPLATES.EXTENSION IS 'used for names';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.ALLOWED_EXP IS 'JSON array of expeditions which can use the template';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.OFFSET_FLAG IS 'T=true (allow offset change) F=false';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.SECTION_FLAG IS 'T=true (change bottom for length changes); F=false';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.SAMPLE_TYPES IS 'JSON array of allowed sample types';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.PERMISSION IS 'T=locked to template manager; A=all';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.CHANGED_BY IS 'user who made the last change';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.CHANGED_ON IS 'time of the last change';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.IGNORE_FLAG IS 'I=ignore; used by review';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.INVALID_FLAG IS 'I=invalid; used by review';
COMMENT ON COLUMN &&xschema..P_TEMPLATES.SAMPLE_GROUP IS 'L=large; S=small';

--------------------------------------------------------
--  DDL for Index P_TEMPLATES_PK
--------------------------------------------------------
CREATE UNIQUE INDEX &&xschema..P_TEMPLATES_PK ON &&xschema..P_TEMPLATES ("TPKEY") 
TABLESPACE "GEODESCIDX" ;

--------------------------------------------------------
--  DDL for Trigger P_TEMPLATES_TPKEY_TRG
--------------------------------------------------------
CREATE OR REPLACE EDITIONABLE TRIGGER &&xschema..P_TEMPLATES_TPKEY_TRG 
before insert on &&xschema..P_TEMPLATES
for each row
  WHEN (new.tpkey < 0 or new.tpkey is null)
begin
  select &&xschema..P_TEMPLATES_TPKEY_SEQ.nextval into :new.tpkey from dual;
end;
/
ALTER TRIGGER &&xschema..P_TEMPLATES_TPKEY_TRG ENABLE;

--------------------------------------------------------
--  Constraints for Table P_TEMPLATES
--------------------------------------------------------
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("TPKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("TYPECODE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("OBJECTIVE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("SCALE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("OFFSET_FLAG" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("SECTION_FLAG" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES ADD CONSTRAINT "P_TEMPLATES_PK" PRIMARY KEY ("TPKEY") USING INDEX &&xschema..P_TEMPLATES_PK  ENABLE;
ALTER TABLE &&xschema..P_TEMPLATES ADD CONSTRAINT "P_TEMPLATES_EXP_JSON" CHECK (ALLOWED_EXP IS JSON) ENABLE;
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("PERMISSION" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES MODIFY ("SAMPLE_GROUP" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_TEMPLATES ADD CONSTRAINT "P_TEMPLATES_SAMPLE_TYPES" CHECK (SAMPLE_TYPES IS JSON) ENABLE;



--------------------------------------------------------
--  DDL for Table P_WORKINGSET
--------------------------------------------------------
CREATE TABLE &&xschema..P_WORKINGSET
( "WSKEY" NUMBER, 
  "OWNER_NAME" VARCHAR2(100 BYTE), 
  "OWNER_SESSION" VARCHAR2(100 BYTE), 
  "UPLOAD" VARCHAR2(5 BYTE) DEFAULT 'F', 
  "LAST_UPLOAD_ON" TIMESTAMP (6), 
  "LAST_UPLOAD_BY" VARCHAR2(100 BYTE), 
  "CREATED_ON" TIMESTAMP (6) DEFAULT SYSTIMESTAMP, 
  "CREATED_BY" VARCHAR2(100 BYTE), 
  "CHANGED_ON" TIMESTAMP (6), 
  "CHANGED_BY" VARCHAR2(100 BYTE), 
  "TPKEY" NUMBER, 
  "HOLE" VARCHAR2(20 BYTE), 
  "EXPEDITION" VARCHAR2(20 BYTE), 
  "SITE" VARCHAR2(20 BYTE), 
  "LIMSHOLE" NUMBER, 
  "FIRST_CORE" NUMBER(3,0) DEFAULT 0, 
  "LAST_CORE" NUMBER(3,0) DEFAULT 999, 
  "TIMEOUT" NUMBER DEFAULT 90
) TABLESPACE "GEODESC" ;

COMMENT ON COLUMN &&xschema..P_WORKINGSET.WSKEY IS 'primary key generated when working set is created';
COMMENT ON COLUMN &&xschema..P_WORKINGSET.UPLOAD IS 'T or F ';
COMMENT ON COLUMN &&xschema..P_WORKINGSET.TPKEY IS 'key to the template table';
COMMENT ON COLUMN &&xschema..P_WORKINGSET.TIMEOUT IS 'Time in minutes before upload warning';

--------------------------------------------------------
--  DDL for Index P_WORKINGSET_PK
--------------------------------------------------------
CREATE UNIQUE INDEX &&xschema..P_WORKINGSET_PK ON &&xschema..P_WORKINGSET ("WSKEY") 
TABLESPACE "GEODESCIDX" ;

--------------------------------------------------------
--  DDL for Trigger P_WORKINGSET_WSKEY_TRG
--------------------------------------------------------
CREATE OR REPLACE EDITIONABLE TRIGGER &&xschema..P_WORKINGSET_WSKEY_TRG 
before insert on &&xschema..P_WORKINGSET
for each row
    WHEN (new.wskey < 0 or new.wskey is null)
begin
  select &&xschema..P_WORKINGSET_WSKEY_SEQ.nextval into :new.wskey from dual;
end;
/
ALTER TRIGGER &&xschema..P_WORKINGSET_WSKEY_TRG ENABLE;

--------------------------------------------------------
--  Constraints for Table P_WORKINGSET
--------------------------------------------------------
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("WSKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET ADD CONSTRAINT "P_WORKINGSET_PK" PRIMARY KEY ("WSKEY") USING INDEX &&xschema..P_WORKINGSET_PK  ENABLE;
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("HOLE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("TPKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("EXPEDITION" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("SITE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("FIRST_CORE" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET MODIFY ("LAST_CORE" NOT NULL ENABLE);


--------------------------------------------------------
--  DDL for Table P_WORKINGSET_DATA
--------------------------------------------------------
CREATE TABLE &&xschema..P_WORKINGSET_DATA
( "WSKEY" NUMBER, 
  "ROWKEY" NUMBER, 
  "ROWDATA" CLOB
) TABLESPACE "GEODESC" 
  LOB ("ROWDATA") STORE AS SECUREFILE ( TABLESPACE "GEODESC" )
;

COMMENT ON COLUMN &&xschema..P_WORKINGSET_DATA.ROWKEY IS 'keys from project data start at 20000.  Keys from capture should always be less  than that and are provided by the capture tool.';

--------------------------------------------------------
--  DDL for Trigger P_WORKINGSET_DATA_ROWKEY_TRG
--------------------------------------------------------
CREATE OR REPLACE EDITIONABLE TRIGGER &&xschema..P_WORKINGSET_DATA_ROWKEY_TRG
before insert on &&xschema..P_WORKINGSET_DATA
for each row
  WHEN (new.rowkey < 0 or new.rowkey is null)
begin
  select &&xschema..P_WORKINGSET_DATA_ROWKEY_SEQ.nextval into :new.rowkey from dual;
end;
/
ALTER TRIGGER &&xschema..P_WORKINGSET_DATA_ROWKEY_TRG" ENABLE;

--------------------------------------------------------
--  Constraints for Table P_WORKINGSET_DATA
--------------------------------------------------------
ALTER TABLE &&xschema..P_WORKINGSET_DATA MODIFY ("WSKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET_DATA MODIFY ("ROWKEY" NOT NULL ENABLE);
ALTER TABLE &&xschema..P_WORKINGSET_DATA MODIFY ("ROWDATA" NOT NULL ENABLE);


/* Gather reference constraints together at the end due to inter-table dependencies. */
--------------------------------------------------------
--  Ref Constraints for Table P_COLUMNS
--------------------------------------------------------
ALTER TABLE &&xschema..P_COLUMNS ADD CONSTRAINT "P_COLUMNS_TPKEY" FOREIGN KEY ("TPKEY") REFERENCES &&xschema..P_TEMPLATES ("TPKEY") ON DELETE CASCADE ENABLE;

--------------------------------------------------------
--  Ref Constraints for Table P_DATA
--------------------------------------------------------
ALTER TABLE &&xschema..P_DATA ADD CONSTRAINT "P_DATA_TPKEY" FOREIGN KEY ("TPKEY") REFERENCES &&xschema..P_TEMPLATES ("TPKEY") ENABLE;

--------------------------------------------------------
--  Ref Constraints for Table P_LIST_VALUES
--------------------------------------------------------
ALTER TABLE &&xschema..P_LIST_VALUES ADD CONSTRAINT "P_LIST_VALUES_COLKEY" FOREIGN KEY ("COLKEY") REFERENCES &&xschema..P_COLUMNS ("COLKEY") ON DELETE CASCADE ENABLE;

--------------------------------------------------------
--  Ref Constraints for Table P_TAXA
--------------------------------------------------------
ALTER TABLE &&xschema..P_TAXA ADD CONSTRAINT "P_TAXA_FK1" FOREIGN KEY ("COLKEY") REFERENCES &&xschema..P_COLUMNS ("COLKEY") ON DELETE CASCADE ENABLE;

--------------------------------------------------------
--  Ref Constraints for Table P_WORKINGSET
--------------------------------------------------------
ALTER TABLE &&xschema..P_WORKINGSET ADD CONSTRAINT "P_WORKINGSET_FK1" FOREIGN KEY ("TPKEY") REFERENCES &&xschema..P_TEMPLATES ("TPKEY") ENABLE;

--------------------------------------------------------
--  Ref Constraints for Table P_WORKINGSET_DATA
--------------------------------------------------------
ALTER TABLE &&xschema..P_WORKINGSET_DATA ADD CONSTRAINT "P_WORKINGSET_DATA_FK1" FOREIGN KEY ("WSKEY") REFERENCES &&xschema..P_WORKINGSET ("WSKEY") ON DELETE CASCADE ENABLE;

...