forked from community/product-iots
Sync APPM with upstream master See merge request entgra/product-iots!28application-manager-new
commit
332a7d186a
@ -0,0 +1,996 @@
|
|||||||
|
CREATE TABLE REG_CLUSTER_LOCK(
|
||||||
|
REG_LOCK_NAME VARCHAR(20) NOT NULL,
|
||||||
|
REG_LOCK_STATUS VARCHAR(20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CLUSTER_LO1 PRIMARY KEY(REG_LOCK_NAME)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_LOG(
|
||||||
|
REG_LOG_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_PATH VARCHAR(750),
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR(500),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_LOG PRIMARY KEY(REG_LOG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_P1
|
||||||
|
ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_LOG_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_LOG_TRIGGER NO CASCADE BEFORE INSERT ON REG_LOG
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_LOG_ID)
|
||||||
|
= (NEXTVAL FOR REG_LOG_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_PATH(
|
||||||
|
REG_PATH_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_PATH_VALUE VARCHAR(750) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID DECIMAL(31,0),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_PATH PRIMARY KEY(REG_PATH_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
-- CREATE INDEX REG_PATH_IND_BY_P1
|
||||||
|
-- ON REG_PATH(REG_PATH_VALUE,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_P2
|
||||||
|
ON REG_PATH(REG_PATH_PARENT_ID,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_PATH_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_PATH_TRIGGER NO CASCADE BEFORE INSERT ON REG_PATH
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_PATH_ID)
|
||||||
|
= (NEXTVAL FOR REG_PATH_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT(
|
||||||
|
REG_CONTENT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_CONTENT_DATA BLOB(2G) NOT LOGGED,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_CONTENT_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_CONTENT_TRIGG1 NO CASCADE BEFORE INSERT ON REG_CONTENT
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_CONTENT_ID)
|
||||||
|
= (NEXTVAL FOR REG_CONTENT_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT_HISTORY(
|
||||||
|
REG_CONTENT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_CONTENT_DATA BLOB(2G) NOT LOGGED,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HI1 PRIMARY KEY(REG_CONTENT_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE(
|
||||||
|
REG_PATH_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID DECIMAL(31,0),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT FK_REG_RES_PATH FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_RESOURCE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_RESOURCE_TRIG1 NO CASCADE BEFORE INSERT ON REG_RESOURCE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_VERSION)
|
||||||
|
= (NEXTVAL FOR REG_RESOURCE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_1
|
||||||
|
ON REG_RESOURCE(REG_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_2
|
||||||
|
ON REG_RESOURCE(REG_PATH_ID,REG_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_3
|
||||||
|
ON REG_RESOURCE(REG_UUID)/
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_4
|
||||||
|
ON REG_RESOURCE(REG_TENANT_ID, REG_UUID)/
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_5
|
||||||
|
ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE)/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_HISTORY(
|
||||||
|
REG_PATH_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID DECIMAL(31,0),
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY(REG_CONTENT_ID,REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY(REG_CONTENT_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_H1 PRIMARY KEY(REG_VERSION,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RES_HIST_IND_1
|
||||||
|
ON REG_RESOURCE_HISTORY(REG_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RES_HIST_IND_2
|
||||||
|
ON REG_RESOURCE_HISTORY(REG_PATH_ID,REG_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_COMMENT(
|
||||||
|
REG_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_COMMENT_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_COMMENT_TRIGG1 NO CASCADE BEFORE INSERT ON REG_COMMENT
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_ID)
|
||||||
|
= (NEXTVAL FOR REG_COMMENT_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_COMMENT(
|
||||||
|
REG_COMMENT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_VERSION DECIMAL(31,0),
|
||||||
|
REG_PATH_ID DECIMAL(31,0),
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0,
|
||||||
|
FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY(REG_COMMENT_ID,REG_TENANT_ID) REFERENCES REG_COMMENT(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RES_COMM_BY_P1
|
||||||
|
ON REG_RESOURCE_COMMENT(REG_PATH_ID,REG_RESOURCE_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RES_COMM_BY_V1
|
||||||
|
ON REG_RESOURCE_COMMENT(REG_VERSION,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_RATING(
|
||||||
|
REG_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_RATING DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_RATING_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_RATING_TRIGGER NO CASCADE BEFORE INSERT ON REG_RATING
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_ID)
|
||||||
|
= (NEXTVAL FOR REG_RATING_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_RATING(
|
||||||
|
REG_RATING_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_VERSION DECIMAL(31,0),
|
||||||
|
REG_PATH_ID DECIMAL(31,0),
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0,
|
||||||
|
FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY(REG_RATING_ID,REG_TENANT_ID) REFERENCES REG_RATING(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RATING_IND_BY1
|
||||||
|
ON REG_RESOURCE_RATING(REG_PATH_ID,REG_RESOURCE_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RATING_IND_BY2
|
||||||
|
ON REG_RESOURCE_RATING(REG_VERSION,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_TAG(
|
||||||
|
REG_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_TAG_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_TAG_TRIGGER NO CASCADE BEFORE INSERT ON REG_TAG
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_ID)
|
||||||
|
= (NEXTVAL FOR REG_TAG_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_TAG(
|
||||||
|
REG_TAG_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_VERSION DECIMAL(31,0),
|
||||||
|
REG_PATH_ID DECIMAL(31,0),
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0,
|
||||||
|
FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY(REG_TAG_ID,REG_TENANT_ID) REFERENCES REG_TAG(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_TAG_IND_BY_PA1
|
||||||
|
ON REG_RESOURCE_TAG(REG_PATH_ID,REG_RESOURCE_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_TAG_IND_BY_VE1
|
||||||
|
ON REG_RESOURCE_TAG(REG_VERSION,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_PROPERTY(
|
||||||
|
REG_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_PROPERTY_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_PROPERTY_TRIG1 NO CASCADE BEFORE INSERT ON REG_PROPERTY
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_ID)
|
||||||
|
= (NEXTVAL FOR REG_PROPERTY_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_PROPERTY(
|
||||||
|
REG_PROPERTY_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_VERSION DECIMAL(31,0),
|
||||||
|
REG_PATH_ID DECIMAL(31,0),
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0,
|
||||||
|
FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY(REG_PROPERTY_ID,REG_TENANT_ID) REFERENCES REG_PROPERTY(REG_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESC_PROP_BY_1
|
||||||
|
ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_VERSION,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESC_PROP_BY_2
|
||||||
|
ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_PATH_ID,REG_RESOURCE_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_ASSOCIATION(
|
||||||
|
REG_ASSOCIATION_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_SOURCEPATH VARCHAR(750) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR(750) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR(2000) NOT NULL,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_ASSOCIATION PRIMARY KEY(REG_ASSOCIATION_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_ASSOCIATION_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_ASSOCIATION_T1 NO CASCADE BEFORE INSERT ON REG_ASSOCIATION
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_ASSOCIATION_ID)
|
||||||
|
= (NEXTVAL FOR REG_ASSOCIATION_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_SNAPSHOT(
|
||||||
|
REG_SNAPSHOT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_PATH_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_RESOURCE_VIDS BLOB(2G) NOT LOGGED NOT NULL,
|
||||||
|
REG_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
FOREIGN KEY(REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH(REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID,REG_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE INDEX REG_SNAPSHOT_PATH1
|
||||||
|
ON REG_SNAPSHOT(REG_PATH_ID,REG_RESOURCE_NAME,REG_TENANT_ID)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE REG_SNAPSHOT_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER REG_SNAPSHOT_TRIG1 NO CASCADE BEFORE INSERT ON REG_SNAPSHOT
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.REG_SNAPSHOT_ID)
|
||||||
|
= (NEXTVAL FOR REG_SNAPSHOT_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_TENANT(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE SMALLINT DEFAULT 0,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG BLOB(2G) NOT LOGGED,
|
||||||
|
PRIMARY KEY(UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
|
||||||
|
ON UM_TENANT (UM_DOMAIN_NAME)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_TENANT_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_TENANT_TRIGGER NO CASCADE BEFORE INSERT ON UM_TENANT
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_TENANT_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0 NOT NULL,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_DOMAIN_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_DOMAIN_TRIGGER NO CASCADE BEFORE INSERT ON UM_DOMAIN
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_DOMAIN_ID)
|
||||||
|
= (NEXTVAL FOR UM_DOMAIN_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE SMALLINT DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_USER_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_USER_TRIGGER NO CASCADE BEFORE INSERT ON UM_USER
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_USER_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE SMALLINT DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_SYSTEM_USER_TRIGGER NO CASCADE BEFORE INSERT ON UM_SYSTEM_USER
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_SYSTEM_USER_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(255),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID DECIMAL(31,0),
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_USER_ATTRIBUTE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_USER_ATTRIBUTE1 NO CASCADE BEFORE INSERT ON UM_USER_ATTRIBUTE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_USER_ATTRIBUTE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UM_SHARED_ROLE SMALLINT DEFAULT 0,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_ROLE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_ROLE_TRIGGER NO CASCADE BEFORE INSERT ON UM_ROLE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_ROLE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_MODULE_NAME VARCHAR(100) NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ID),
|
||||||
|
UNIQUE(UM_MODULE_NAME)
|
||||||
|
)/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_MODULE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_MODULE_TRIGGER NO CASCADE BEFORE INSERT ON UM_MODULE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_MODULE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_PERMISSION_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_PERMISSION_TRI1 NO CASCADE BEFORE INSERT ON UM_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_PERMISSION_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION
|
||||||
|
ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID)/
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_PERMISSION_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UM_DOMAIN_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UNIQUE(UM_PERMISSION_ID,UM_ROLE_NAME,UM_TENANT_ID,UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY(UM_PERMISSION_ID,UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_ROLE_PERMISSION_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_ROLE_PERMISSIO1 NO CASCADE BEFORE INSERT ON UM_ROLE_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_ROLE_PERMISSION_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_PERMISSION(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_PERMISSION_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UNIQUE(UM_PERMISSION_ID,UM_USER_NAME,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_PERMISSION_ID,UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_USER_PERMISSION_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_USER_PERMISSIO1 NO CASCADE BEFORE INSERT ON UM_USER_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_USER_PERMISSION_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ROLE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ROLE_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_USER_ROLE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_USER_ROLE_TRIG1 NO CASCADE BEFORE INSERT ON UM_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_USER_ROLE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100) NOT NULL,
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_ACCOUNT_MAPPING_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_ACCOUNT_MAPPING_TRIG1 NO CASCADE BEFORE INSERT ON UM_ACCOUNT_MAPPING
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_ACCOUNT_MAPPING_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_TENANT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UNIQUE(UM_DIALECT_URI,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_DIALECT_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_DIALECT_TRIGGER NO CASCADE BEFORE INSERT ON UM_DIALECT
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_DIALECT_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_DIALECT_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER DECIMAL(31,0),
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UNIQUE(UM_DIALECT_ID,UM_CLAIM_URI,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID,UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_CLAIM_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_CLAIM_TRIGGER NO CASCADE BEFORE INSERT ON UM_CLAIM
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_CLAIM_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_DIALECT_ID DECIMAL(31,0),
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID,UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_PROFILE_CONFIG_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_PROFILE_CONFIG1 NO CASCADE BEFORE INSERT ON UM_PROFILE_CONFIG
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_PROFILE_CONFIG_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_PROFILE_ID DECIMAL(31,0),
|
||||||
|
UM_CLAIM_ID DECIMAL(31,0),
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID,UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID,UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_CLAIM_BEHAVIOR_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_CLAIM_BEHAVIOR1 NO CASCADE BEFORE INSERT ON UM_CLAIM_BEHAVIOR
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_CLAIM_BEHAVIOR_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_HYBRID_ROLE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_HYBRID_ROLE_TR1 NO CASCADE BEFORE INSERT ON UM_HYBRID_ROLE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_HYBRID_ROLE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ROLE_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_TENANT_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UM_DOMAIN_ID DECIMAL(31,0) DEFAULT 0 NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME,UM_ROLE_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY(UM_ID,UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_HYBRID_USER_ROLE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_HYBRID_USER_RO1 NO CASCADE BEFORE INSERT ON UM_HYBRID_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_HYBRID_USER_ROLE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0 NOT NULL,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_ROLE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_SYSTEM_ROLE_TRIGGER NO CASCADE BEFORE INSERT ON UM_SYSTEM_ROLE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_SYSTEM_ROLE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID)/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0 NOT NULL,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_ROLE_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UM_SYSTEM_USER_ROLE_TRIGGER NO CASCADE BEFORE INSERT ON UM_SYSTEM_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_SYSTEM_USER_ROLE_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME (
|
||||||
|
UM_ID DECIMAL(31,0) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0 NOT NULL,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_HYBRID_REMEMBER_ME_SEQUENCE AS DECIMAL(27,0)
|
||||||
|
INCREMENT BY 1
|
||||||
|
START WITH 1
|
||||||
|
NO CACHE/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TRIGGER UMHYBRID_REMEMB_ME NO CASCADE BEFORE INSERT ON UM_HYBRID_REMEMBER_ME
|
||||||
|
REFERENCING NEW AS NEW FOR EACH ROW MODE DB2SQL
|
||||||
|
|
||||||
|
BEGIN ATOMIC
|
||||||
|
|
||||||
|
SET (NEW.UM_ID)
|
||||||
|
= (NEXTVAL FOR UM_HYBRID_REMEMBER_ME_SEQUENCE);
|
||||||
|
|
||||||
|
END/
|
||||||
|
|
@ -0,0 +1,441 @@
|
|||||||
|
CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_PATH VARCHAR (2000),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_LOG_IND_BY_REG_LOGTIME ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_VALUE VARCHAR(2000) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_PATH_IND_BY_NAME ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_PATH_IND_BY_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_IND_BY_UUID ON REG_RESOURCE(REG_UUID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_IND_BY_TENANT ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_IND_BY_TYPE ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_HISTORY_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_COMMENT (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_COMMENT_IND_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RATING (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_TAG (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PROPERTY (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT IF NOT EXISTS REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_RESOURCE_PROPERTY_IND_BY_VERSION ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_SOURCEPATH VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (2000) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR (256),
|
||||||
|
REG_RESOURCE_VIDS LONGBLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT IF NOT EXISTS REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX IF NOT EXISTS REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_TENANT (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG LONGBLOB NOT NULL,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME));
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS INDEX_UM_TENANT_UM_DOMAIN_NAME ON UM_TENANT (UM_DOMAIN_NAME);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_MODULE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_USER_NAME, UM_TENANT_ID),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID));
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID));
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_DIALECT(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_CLAIM(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI,UM_MAPPED_ATTRIBUTE_DOMAIN, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID,UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_HYBRID_REMEMBER_ME (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX IF NOT EXISTS SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
@ -0,0 +1,480 @@
|
|||||||
|
CREATE TABLE REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME LVARCHAR (20),
|
||||||
|
REG_LOCK_STATUS LVARCHAR (20),
|
||||||
|
REG_LOCKED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_LOG (
|
||||||
|
REG_LOG_ID SERIAL UNIQUE,
|
||||||
|
REG_PATH LVARCHAR (750),
|
||||||
|
REG_USER_ID LVARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA LVARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- The REG_PATH_VALUE should be less than 767 bytes, and hence was fixed at 750.
|
||||||
|
-- See CARBON-5917.
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REGLOG ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE REG_PATH(
|
||||||
|
REG_PATH_ID SERIAL UNIQUE,
|
||||||
|
REG_PATH_VALUE LVARCHAR(750) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID) CONSTRAINT PK_REG_PATH
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT (
|
||||||
|
REG_CONTENT_ID SERIAL UNIQUE,
|
||||||
|
REG_CONTENT_DATA BLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID) CONSTRAINT PK_REG_CONTENT
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA BLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID) CONSTRAINT PK_REG_CONTENT_HISTORY
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME LVARCHAR(256),
|
||||||
|
REG_VERSION SERIAL UNIQUE,
|
||||||
|
REG_MEDIA_TYPE LVARCHAR(500),
|
||||||
|
REG_CREATOR LVARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_LAST_UPDATOR LVARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_DESCRIPTION LVARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID LVARCHAR(100) NOT NULL,
|
||||||
|
PRIMARY KEY(REG_VERSION, REG_TENANT_ID) CONSTRAINT PK_REG_RESOURCE
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID;
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID;
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID ON REG_RESOURCE(REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENAN ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME LVARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE LVARCHAR(500),
|
||||||
|
REG_CREATOR LVARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_LAST_UPDATOR LVARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_DESCRIPTION LVARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID LVARCHAR(100) NOT NULL,
|
||||||
|
PRIMARY KEY(REG_VERSION, REG_TENANT_ID) CONSTRAINT PK_REG_RESOURCE_HISTORY
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID;
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID;
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
|
||||||
|
-- * CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE REG_COMMENT (
|
||||||
|
REG_ID SERIAL UNIQUE,
|
||||||
|
REG_COMMENT_TEXT LVARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID LVARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_ID, REG_TENANT_ID) CONSTRAINT PK_REG_COMMENT
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME LVARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID;
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID;
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE REG_RATING (
|
||||||
|
REG_ID SERIAL UNIQUE,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID LVARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_ID, REG_TENANT_ID) CONSTRAINT PK_REG_RATING
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME LVARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID ;
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID ;
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_TAG (
|
||||||
|
REG_ID SERIAL UNIQUE,
|
||||||
|
REG_TAG_NAME LVARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID LVARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_ID, REG_TENANT_ID) CONSTRAINT PK_REG_TAG
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME LVARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID ;
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID ;
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE REG_PROPERTY (
|
||||||
|
REG_ID SERIAL UNIQUE,
|
||||||
|
REG_NAME LVARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE LVARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_ID, REG_TENANT_ID) CONSTRAINT PK_REG_PROPERTY
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME LVARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID ;
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID) CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID;
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- CREATE TABLE REG_ASSOCIATIONS (
|
||||||
|
-- SRC_PATH_ID INTEGER,
|
||||||
|
-- SRC_RESOURCE_NAME LVARCHAR(256),
|
||||||
|
-- SRC_VERSION INTEGER,
|
||||||
|
-- TGT_PATH_ID INTEGER,
|
||||||
|
-- TGT_RESOURCE_NAME LVARCHAR(256),
|
||||||
|
-- TGT_VERSION INTEGER
|
||||||
|
-- );
|
||||||
|
--
|
||||||
|
-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_SRC_PATH_ID FOREIGN KEY (SRC_PATH_ID) REFERENCES REG_PATH (PATH_ID);
|
||||||
|
-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_TGT_PATH_ID FOREIGN KEY (TGT_PATH_ID) REFERENCES REG_PATH (PATH_ID);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_VERSION ON REG_ASSOCIATIONS(SRC_VERSION);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_VERSION ON REG_ASSOCIATIONS(TGT_VERSION);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_RESOURCE_NAME ON REG_ASSOCIATIONS(SRC_RESOURCE_NAME);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_RESOURCE_NAME ON REG_ASSOCIATIONS(TGT_RESOURCE_NAME);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID SERIAL UNIQUE,
|
||||||
|
REG_SOURCEPATH LVARCHAR (750) NOT NULL,
|
||||||
|
REG_TARGETPATH LVARCHAR (750) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE LVARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID SERIAL UNIQUE,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME LVARCHAR(255),
|
||||||
|
REG_RESOURCE_VIDS BLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID) CONSTRAINT PK_REG_SNAPSHOT
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID) CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID;
|
||||||
|
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_DOMAIN_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL LVARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT 'f',
|
||||||
|
UM_CREATED_DATE DATETIME YEAR TO SECOND,
|
||||||
|
UM_USER_CONFIG BLOB,
|
||||||
|
UNIQUE(UM_DOMAIN_NAME)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_USER_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD LVARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE LVARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT 'f',
|
||||||
|
UM_CHANGED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID SERIAL UNIQUE,
|
||||||
|
UM_DOMAIN_NAME LVARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_USER_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD LVARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE LVARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT 'f',
|
||||||
|
UM_CHANGED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_ROLE_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT 'f',
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID SERIAL,
|
||||||
|
UM_MODULE_NAME LVARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION LVARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_RESOURCE_ID LVARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION LVARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID SERIAL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_ATTR_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE LVARCHAR(1024),
|
||||||
|
UM_PROFILE_ID LVARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_DIALECT_URI LVARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI LVARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG LVARCHAR(255),
|
||||||
|
UM_DESCRIPTION LVARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN LVARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE LVARCHAR(255),
|
||||||
|
UM_REG_EX LVARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_PROFILE_NAME LVARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_ROLE_NAME LVARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_USER_NAME LVARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_ROLE_NAME LVARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_USER_NAME LVARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID SERIAL UNIQUE,
|
||||||
|
UM_USER_NAME LVARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE LVARCHAR(1024),
|
||||||
|
UM_CREATED_TIME DATETIME YEAR TO SECOND,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
@ -0,0 +1,630 @@
|
|||||||
|
--create table REG_CLUSTER_LOCK
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_CLUSTER_LOCK]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME DATETIME,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
);
|
||||||
|
|
||||||
|
--create table REG_LOG
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_LOG]') AND TYPE IN (N'U'))
|
||||||
|
|
||||||
|
CREATE TABLE REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_PATH VARCHAR (2000),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME DATETIME NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_LOG_IND_BY_REG_LOGTIME')
|
||||||
|
DROP INDEX REG_LOG.REG_LOG_IND_BY_REG_LOGTIME
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REG_LOGTIME ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--create table regpath
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_PATH]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_PATH_VALUE VARCHAR(895) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_PATH_IND_BY_PATH_VALUE')
|
||||||
|
DROP INDEX REG_PATH.REG_PATH_IND_BY_PATH_VALUE
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_PATH_IND_BY_PARENT_ID')
|
||||||
|
DROP INDEX REG_PATH.REG_PATH_IND_BY_PARENT_ID
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
|
||||||
|
--create table regcontent
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_CONTENT]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_CONTENT_DATA VARBINARY(MAX),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--create table REG_CONTENT_HISTORY
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_CONTENT_HISTORY]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA VARBINARY(MAX),
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
--create table REG_RESOURCE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME DATETIME NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME DATETIME NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_FK_BY_PATH_ID]') AND PARENT_OBJECT_ID = OBJECT_ID(N'DBO.[REG_RESOURCE]'))
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--This foriegn key constrainst is maintained from the code level
|
||||||
|
--IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_FK_BY_CONTENT_ID]') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE]'))
|
||||||
|
--ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_IND_BY_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE.REG_RESOURCE_IND_BY_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_IND_BY_PATH_ID_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE.REG_RESOURCE_IND_BY_PATH_ID_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_IND_BY_UUID')
|
||||||
|
DROP INDEX REG_RESOURCE.REG_RESOURCE_IND_BY_UUID
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID ON REG_RESOURCE(REG_UUID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_IND_BY_TENANT')
|
||||||
|
DROP INDEX REG_RESOURCE.REG_RESOURCE_IND_BY_TENANT
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENANT ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_IND_BY_TYPE')
|
||||||
|
DROP INDEX REG_RESOURCE.REG_RESOURCE_IND_BY_TYPE
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
|
||||||
|
|
||||||
|
--create table REG_RESOURCE_HISTORY
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_HISTORY]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME DATETIME NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME DATETIME NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE object_id = OBJECT_ID(N'[dbo].[REG_RESOURCE_HIST_FK_BY_PATHID]') AND parent_object_id = OBJECT_ID(N'[dbo].[REG_RESOURCE_HISTORY]'))
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE object_id = OBJECT_ID(N'[dbo].[REG_RESOURCE_HIST_FK_BY_CONTENT_ID]') AND parent_object_id = OBJECT_ID(N'[dbo].[REG_RESOURCE_HISTORY]'))
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_HISTORY_IND_BY_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE_HISTORY.REG_RESOURCE_HISTORY_IND_BY_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE_HISTORY.REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME ON REG_RESOURCE_HISTORY(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--create table REG_COMMENT
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_COMMENT]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_COMMENT (
|
||||||
|
REG_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME DATETIME NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--create table REG_RESOURCE_COMMENT
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_COMMENT]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER DEFAULT 0,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].REG_RESOURCE_COMMENT_FK_BY_PATH_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_COMMENT'))
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_COMMENT'))
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE_COMMENT.REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_COMMENT_IND_BY_VERSION')
|
||||||
|
DROP INDEX REG_RESOURCE_COMMENT.REG_RESOURCE_COMMENT_IND_BY_VERSION
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--create table REG_RATING
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RATING]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RATING (
|
||||||
|
REG_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME DATETIME NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--create table REG_RESOURCE_RATING
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_RATING]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].REG_RESOURCE_RATING_FK_BY_PATH_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[dbo].REG_RESOURCE_RATING'))
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].REG_RESOURCE_RATING_FK_BY_RATING_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[dbo].REG_RESOURCE_RATING'))
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE_RATING.REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_RATING_IND_BY_VERSION')
|
||||||
|
DROP INDEX REG_RESOURCE_RATING.REG_RESOURCE_RATING_IND_BY_VERSION
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--create table REG_TAG
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_TAG]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_TAG (
|
||||||
|
REG_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME DATETIME NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--create table REG_RESOURCE_TAG
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_TAG]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER DEFAULT 0,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_TAG_FK_BY_PATH_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_TAG'))
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_TAG_FK_BY_TAG_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_TAG'))
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE_TAG.REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_TAG_IND_BY_VERSION')
|
||||||
|
DROP INDEX REG_RESOURCE_TAG.REG_RESOURCE_TAG_IND_BY_VERSION
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--CREATE TABLE REG_PROPERTY
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_PROPERTY]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_PROPERTY (
|
||||||
|
REG_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--CREATE TABLE REG_RESOURCE_PROPERTY
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_RESOURCE_PROPERTY]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_PROPERTY_FK_BY_PATH_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_PROPERTY'))
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_PROPERTY_FK_BY_TAG_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_RESOURCE_PROPERTY'))
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME')
|
||||||
|
DROP INDEX REG_RESOURCE_PROPERTY.REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_RESOURCE_PROPERTY_IND_BY_VERSION')
|
||||||
|
DROP INDEX REG_RESOURCE_PROPERTY.REG_RESOURCE_PROPERTY_IND_BY_VERSION
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
--CREATE TABLE REG_ASSOCIATION
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_ASSOCIATION]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_SOURCEPATH VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (2000) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--CREATE TABLE REG_SNAPSHOT
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].[REG_SNAPSHOT]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR (256),
|
||||||
|
REG_RESOURCE_VIDS VARBINARY(MAX) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.FOREIGN_KEYS WHERE OBJECT_ID = OBJECT_ID(N'[DBO].REG_SNAPSHOT_FK_BY_PATH_ID') AND PARENT_OBJECT_ID = OBJECT_ID(N'[DBO].REG_SNAPSHOT'))
|
||||||
|
ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME')
|
||||||
|
DROP INDEX REG_SNAPSHOT.REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME
|
||||||
|
CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
--CREATE TABLE UM_TENANT_
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_TENANT]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BIT DEFAULT 0,
|
||||||
|
UM_CREATED_DATE DATETIME NOT NULL,
|
||||||
|
UM_USER_CONFIG VARBINARY(MAX),
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME));
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'INDEX_UM_TENANT_UM_DOMAIN_NAME')
|
||||||
|
DROP INDEX UM_TENANT.INDEX_UM_TENANT_UM_DOMAIN_NAME
|
||||||
|
CREATE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME ON UM_TENANT (UM_DOMAIN_NAME);
|
||||||
|
|
||||||
|
--CREATE TABLE UM_USER
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_USER]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BIT DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME DATETIME NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--CREATE TABLE UM_DOMAIN
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_DOMAIN]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
--CREATE TABLE UM_SYSTEM_USER
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_SYSTEM_USER]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BIT DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME DATETIME NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
--CREATE TABLE UM_USER_ATTRIBUTE
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_USER_ATTRIBUTE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID));
|
||||||
|
|
||||||
|
IF EXISTS (SELECT NAME FROM SYSINDEXES WHERE NAME = 'UM_USER_ID_INDEX')
|
||||||
|
DROP INDEX UM_USER_ATTRIBUTE.UM_USER_ID_INDEX
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
|
||||||
|
|
||||||
|
|
||||||
|
--CREATE TABLE UM_ROLE
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BIT DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
--CREATES TABLE UM_MODULE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_MODULE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_MODULE_ACTIONS]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
--CREATE TABLE UM_PERMISSION
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_PERMISSION]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT name FROM sysindexes WHERE name = 'INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION')
|
||||||
|
DROP INDEX UM_PERMISSION.INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION
|
||||||
|
CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
|
||||||
|
|
||||||
|
--CREATE TABLE UM_ROLE_PERMISSION
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_ROLE_PERMISSION]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
--CREATE TABLE UM_USER_PERMISSION
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_USER_PERMISSION]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_USER_NAME, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_USER_ROLE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_USER_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER IDENTITY(1,1) NOT NULL,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_SHARED_USER_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_ACCOUNT_MAPPING]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER IDENTITY(1,1),
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
-- create table UM_DIALECT
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_DIALECT]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_DIALECT_URI VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_CLAIM
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_CLAIM]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_DIALECT_ID INTEGER,
|
||||||
|
UM_CLAIM_URI VARCHAR(255),
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_PROFILE_CONFIG
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_PROFILE_CONFIG]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_DIALECT_ID INTEGER,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_CLAIM_BEHAVIOR
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_CLAIM_BEHAVIOR]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_HYBRID_ROLE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_HYBRID_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_HYBRID_USER_ROLE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_HYBRID_USER_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1) NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
-- create table UM_SYSTEM_ROLE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_SYSTEM_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1) NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
IF EXISTS (SELECT name FROM sysindexes WHERE name = 'SYSTEM_ROLE_IND_BY_RN_TI')
|
||||||
|
DROP INDEX UM_SYSTEM_ROLE.SYSTEM_ROLE_IND_BY_RN_TI
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
|
||||||
|
|
||||||
|
-- create table UM_SYSTEM_USER_ROLE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_SYSTEM_USER_ROLE]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- create table UM_HYBRID_USER_ROLE
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.OBJECTS WHERE OBJECT_ID = OBJECT_ID(N'[dbo].[UM_HYBRID_REMEMBER_ME]') AND TYPE IN (N'U'))
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER IDENTITY(1, 1),
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME DATETIME,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
@ -0,0 +1,478 @@
|
|||||||
|
CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_PATH VARCHAR (750),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REG_LOGTIME USING HASH ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- The REG_PATH_VALUE should be less than 767 bytes, and hence was fixed at 750.
|
||||||
|
-- See CARBON-5917.
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_VALUE VARCHAR(750) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE USING HASH ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID USING HASH ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT 0,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT 0,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME USING HASH ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID USING HASH ON REG_RESOURCE(REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENANT USING HASH ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE USING HASH ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME USING HASH ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_COMMENT (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION USING HASH ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RATING (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION USING HASH ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_TAG (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION USING HASH ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PROPERTY (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION USING HASH ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- CREATE TABLE IF NOT EXISTS REG_ASSOCIATIONS (
|
||||||
|
-- SRC_PATH_ID INTEGER,
|
||||||
|
-- SRC_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- SRC_VERSION INTEGER,
|
||||||
|
-- TGT_PATH_ID INTEGER,
|
||||||
|
-- TGT_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- TGT_VERSION INTEGER
|
||||||
|
-- )ENGINE INNODB;
|
||||||
|
--
|
||||||
|
-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_SRC_PATH_ID FOREIGN KEY (SRC_PATH_ID) REFERENCES REG_PATH (PATH_ID);
|
||||||
|
-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_TGT_PATH_ID FOREIGN KEY (TGT_PATH_ID) REFERENCES REG_PATH (PATH_ID);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_VERSION ON REG_ASSOCIATIONS(SRC_VERSION);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_VERSION ON REG_ASSOCIATIONS(TGT_VERSION);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_RESOURCE_NAME ON REG_ASSOCIATIONS(SRC_RESOURCE_NAME);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_RESOURCE_NAME ON REG_ASSOCIATIONS(TGT_RESOURCE_NAME);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_SOURCEPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(255),
|
||||||
|
REG_RESOURCE_VIDS LONGBLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG LONGBLOB,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
|
||||||
|
ON UM_TENANT (UM_DOMAIN_NAME);
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
@ -0,0 +1,477 @@
|
|||||||
|
CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_PATH VARCHAR (750),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REGLOG USING HASH ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- The REG_PATH_VALUE should be less than 767 bytes, and hence was fixed at 750.
|
||||||
|
-- See CARBON-5917.
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_VALUE VARCHAR(750) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE USING HASH ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID USING HASH ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME USING HASH ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID USING HASH ON REG_RESOURCE(REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENAN USING HASH ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE USING HASH ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME USING HASH ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_COMMENT (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION USING HASH ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RATING (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION USING HASH ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_TAG (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION USING HASH ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PROPERTY (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION USING HASH ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
-- CREATE TABLE IF NOT EXISTS REG_ASSOCIATIONS (
|
||||||
|
-- SRC_PATH_ID INTEGER,
|
||||||
|
-- SRC_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- SRC_VERSION INTEGER,
|
||||||
|
-- TGT_PATH_ID INTEGER,
|
||||||
|
-- TGT_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- TGT_VERSION INTEGER
|
||||||
|
-- )ENGINE INNODB;
|
||||||
|
--
|
||||||
|
-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_SRC_PATH_ID FOREIGN KEY (SRC_PATH_ID) REFERENCES REG_PATH (PATH_ID);
|
||||||
|
-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_TGT_PATH_ID FOREIGN KEY (TGT_PATH_ID) REFERENCES REG_PATH (PATH_ID);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_VERSION ON REG_ASSOCIATIONS(SRC_VERSION);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_VERSION ON REG_ASSOCIATIONS(TGT_VERSION);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_RESOURCE_NAME ON REG_ASSOCIATIONS(SRC_RESOURCE_NAME);
|
||||||
|
-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_RESOURCE_NAME ON REG_ASSOCIATIONS(TGT_RESOURCE_NAME);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_SOURCEPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(255),
|
||||||
|
REG_RESOURCE_VIDS LONGBLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG LONGBLOB,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
|
||||||
|
ON UM_TENANT (UM_DOMAIN_NAME);
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE INNODB;
|
@ -0,0 +1,421 @@
|
|||||||
|
CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_PATH VARCHAR (750),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
-- The REG_PATH_VALUE should be less than 767 bytes, and hence was fixed at 750.
|
||||||
|
-- See CARBON-5917.
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_VALUE VARCHAR(750) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256) CHARACTER SET latin1 COLLATE latin1_bin,
|
||||||
|
REG_VERSION INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_COMMENT (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RATING (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_TAG (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PROPERTY (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
-- CREATE TABLE IF NOT EXISTS REG_ASSOCIATIONS (
|
||||||
|
-- SRC_PATH_ID INTEGER,
|
||||||
|
-- SRC_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- SRC_VERSION INTEGER,
|
||||||
|
-- TGT_PATH_ID INTEGER,
|
||||||
|
-- TGT_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- TGT_VERSION INTEGER
|
||||||
|
-- )ENGINE NDB;
|
||||||
|
--
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_SOURCEPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(255),
|
||||||
|
REG_RESOURCE_VIDS LONGBLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG LONGBLOB,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_ID, UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID, UM_DOMAIN_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_CUSTOM_USERSTORE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USERSTORE_PROPERTY VARCHAR(255) NOT NULL,
|
||||||
|
UM_USERSTORE_VALUE VARCHAR(500) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
@ -0,0 +1,421 @@
|
|||||||
|
CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_PATH VARCHAR (750),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
-- The REG_PATH_VALUE should be less than 767 bytes, and hence was fixed at 750.
|
||||||
|
-- See CARBON-5917.
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_VALUE VARCHAR(750) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA LONGBLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256) CHARACTER SET latin1 COLLATE latin1_bin,
|
||||||
|
REG_VERSION INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_COMMENT (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RATING (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_TAG (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_PROPERTY (
|
||||||
|
REG_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
-- CREATE TABLE IF NOT EXISTS REG_ASSOCIATIONS (
|
||||||
|
-- SRC_PATH_ID INTEGER,
|
||||||
|
-- SRC_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- SRC_VERSION INTEGER,
|
||||||
|
-- TGT_PATH_ID INTEGER,
|
||||||
|
-- TGT_RESOURCE_NAME VARCHAR(256),
|
||||||
|
-- TGT_VERSION INTEGER
|
||||||
|
-- )ENGINE NDB;
|
||||||
|
--
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
|
||||||
|
REG_SOURCEPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (750) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(255),
|
||||||
|
REG_RESOURCE_VIDS LONGBLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG LONGBLOB,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_ID, UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID, UM_DOMAIN_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
|
||||||
|
PRIMARY KEY(UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
||||||
|
|
||||||
|
CREATE TABLE UM_CUSTOM_USERSTORE(
|
||||||
|
UM_ID INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
|
UM_USERSTORE_PROPERTY VARCHAR(255) NOT NULL,
|
||||||
|
UM_USERSTORE_VALUE VARCHAR(500) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)ENGINE NDB;
|
@ -0,0 +1,813 @@
|
|||||||
|
CREATE TABLE REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR2(20),
|
||||||
|
REG_LOCK_STATUS VARCHAR2(20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CLUSTER_LOCK PRIMARY KEY (REG_LOCK_NAME))
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER,
|
||||||
|
REG_PATH VARCHAR2(2000),
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR2(500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_LOG PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_LOG_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REGLOG ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_LOG_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_LOG
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_LOG_SEQUENCE.nextval INTO :NEW.REG_LOG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NULL,
|
||||||
|
REG_PATH_VALUE VARCHAR2(2000) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_PATH_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_PATH_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_PATH
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_PATH_SEQUENCE.nextval INTO :NEW.REG_PATH_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_CONTENT_DATA BLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_CONTENT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_CONTENT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_CONTENT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_CONTENT_SEQUENCE.nextval INTO :NEW.REG_CONTENT_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA BLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR2(256),
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_MEDIA_TYPE VARCHAR2(500),
|
||||||
|
REG_CREATOR VARCHAR2(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR2(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR2(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR2(100) NOT NULL,
|
||||||
|
CONSTRAINT FK_REG_RES_PATH FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_RESOURCE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_RESOURCE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_RESOURCE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_RESOURCE_SEQUENCE.nextval INTO :NEW.REG_VERSION FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID ON REG_RESOURCE(REG_UUID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENAN ON REG_RESOURCE(REG_TENANT_ID, REG_UUID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR2(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR2(500),
|
||||||
|
REG_CREATOR VARCHAR2(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR2(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR2(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR2(100) NOT NULL,
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_CONTENT_ID,REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_HIST_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_HIST_IND_BY_PATH_ID ON REG_RESOURCE_HISTORY(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_COMMENT (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_COMMENT_TEXT VARCHAR2(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_COMMENT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_COMMENT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_COMMENT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_COMMENT_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_COMMENT_ID,REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_COMM_BY_PATH_ID ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_COMM_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_RATING (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_RATING_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_RATING_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_RATING
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_RATING_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_RATING_ID,REG_TENANT_ID) REFERENCES REG_RATING (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RATING_IND_BY_PATH_ID ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_TAG (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_TAG_NAME VARCHAR2(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_TAG_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_TAG_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_TAG
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_TAG_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_TAG_ID,REG_TENANT_ID) REFERENCES REG_TAG (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_TAG_IND_BY_PATH_ID ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_PROPERTY (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_NAME VARCHAR2(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR2(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_PROPERTY_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_PROPERTY_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_PROPERTY
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_PROPERTY_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_PROPERTY_ID,REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESC_PROP_BY_VERN_PROPID ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESC_PROP_BY_VERN_PATHNAME ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_PATH_ID,REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER,
|
||||||
|
REG_SOURCEPATH VARCHAR2 (2000) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR2 (2000) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR2 (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_ASSOCIATION PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_ASSOCIATION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_ASSOCIATION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_ASSOCIATION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_ASSOCIATION_SEQUENCE.nextval INTO :NEW.REG_ASSOCIATION_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
REG_RESOURCE_VIDS BLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_SNAPSHOT_PATH_ID ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_SNAPSHOT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_SNAPSHOT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_SNAPSHOT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_SNAPSHOT_SEQUENCE.nextval INTO :NEW.REG_SNAPSHOT_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE NUMBER(1) DEFAULT 0,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG BLOB,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_TENANT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_TENANT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_TENANT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_TENANT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_DOMAIN_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE OR REPLACE TRIGGER UM_DOMAIN_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_DOMAIN
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_DOMAIN_SEQUENCE.nextval INTO :NEW.UM_DOMAIN_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR2(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR2(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE NUMBER(1) DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE NUMBER(1) DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID))
|
||||||
|
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE OR REPLACE TRIGGER UM_SYSTEM_USER_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_SYSTEM_USER
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_SYSTEM_USER_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ATTR_NAME VARCHAR2(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR2(255),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_ATTRIBUTE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID)
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_ATTRIBUTE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER_ATTRIBUTE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_ATTRIBUTE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ROLE_NAME VARCHAR2(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE CHAR(1) DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_ROLE
|
||||||
|
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_MODULE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE OR REPLACE TRIGGER UM_MODULE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_MODULE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_MODULE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_RESOURCE_ID VARCHAR2(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR2(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_PERMISSION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
--FOREIGN KEY (UM_ROLE_ID) REFERENCES UM_ROLE(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_ROLE_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_ROLE_PERMISSION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_ROLE_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_ROLE_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_USER_NAME, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
--FOREIGN KEY (UM_USER_ID) REFERENCES UM_USER(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_PERMISSION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_ACCOUNT_MAPPING_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_ACCOUNT_MAPPING_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_ACCOUNT_MAPPING
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_ACCOUNT_MAPPING_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_DIALECT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_DIALECT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_DIALECT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_DIALECT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_MAPPED_ATTRIBUTE_DOMAIN, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_CLAIM_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_CLAIM_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_CLAIM
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_CLAIM_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DIALECT_ID INTEGER,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_PROFILE_CONFIG_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_PROFILE_CONFIG_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_PROFILE_CONFIG
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_PROFILE_CONFIG_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_CLAIM_BEHAVIOR_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_CLAIM_BEHAVIOR_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_CLAIM_BEHAVIOR
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_CLAIM_BEHAVIOR_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_HYBRID_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_HYBRID_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_HYBRID_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_HYBRID_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID,UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_HYBRID_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_HYBRID_USER_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_HYBRID_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_HYBRID_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_HYBRID_REMEMBER_ME_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_HYBRID_REMEMBER_ME_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_HYBRID_REMEMBER_ME
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_HYBRID_REMEMBER_ME_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_SYSTEM_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_SYSTEM_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_SYSTEM_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_SYSTEM_USER_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_SYSTEM_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_SYSTEM_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
@ -0,0 +1,810 @@
|
|||||||
|
CREATE TABLE REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR2(20),
|
||||||
|
REG_LOCK_STATUS VARCHAR2(20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CLUSTER_LOCK PRIMARY KEY (REG_LOCK_NAME))
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER,
|
||||||
|
REG_PATH VARCHAR2(2000),
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR2(500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_LOG PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_LOG_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REGLOG ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_LOG_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_LOG
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_LOG_SEQUENCE.nextval INTO :NEW.REG_LOG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER NULL,
|
||||||
|
REG_PATH_VALUE VARCHAR2(2000) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_PATH_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_PATH_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_PATH
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_PATH_SEQUENCE.nextval INTO :NEW.REG_PATH_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_CONTENT_DATA BLOB,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_CONTENT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_CONTENT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_CONTENT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_CONTENT_SEQUENCE.nextval INTO :NEW.REG_CONTENT_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA BLOB,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR2(256),
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_MEDIA_TYPE VARCHAR2(500),
|
||||||
|
REG_CREATOR VARCHAR2(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR2(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR2(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR2(100) NOT NULL,
|
||||||
|
CONSTRAINT FK_REG_RES_PATH FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_RESOURCE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_RESOURCE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_RESOURCE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_RESOURCE_SEQUENCE.nextval INTO :NEW.REG_VERSION FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID ON REG_RESOURCE(REG_UUID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENAN ON REG_RESOURCE(REG_TENANT_ID, REG_UUID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR2(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR2(500),
|
||||||
|
REG_CREATOR VARCHAR2(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR2(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR2(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR2(100) NOT NULL,
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_CONTENT_ID,REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_HIST_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_HIST_IND_BY_PATH_ID ON REG_RESOURCE_HISTORY(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_COMMENT (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_COMMENT_TEXT VARCHAR2(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_COMMENT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_COMMENT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_COMMENT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_COMMENT_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_COMMENT_ID,REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_COMM_BY_PATH_ID ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RES_COMM_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_RATING (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_RATING_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_RATING_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_RATING
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_RATING_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_RATING_ID,REG_TENANT_ID) REFERENCES REG_RATING (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RATING_IND_BY_PATH_ID ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_TAG (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_TAG_NAME VARCHAR2(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR2(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_TAG_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_TAG_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_TAG
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_TAG_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_TAG_ID,REG_TENANT_ID) REFERENCES REG_TAG (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_TAG_IND_BY_PATH_ID ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_PROPERTY (
|
||||||
|
REG_ID INTEGER,
|
||||||
|
REG_NAME VARCHAR2(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR2(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_PROPERTY_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_PROPERTY_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_PROPERTY
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_PROPERTY_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
FOREIGN KEY (REG_PROPERTY_ID,REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID,REG_TENANT_ID),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESC_PROP_BY_VERN_PROPID ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_VERSION, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_RESC_PROP_BY_VERN_PATHNAME ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_PATH_ID,REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE TABLE REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER,
|
||||||
|
REG_SOURCEPATH VARCHAR2 (2000) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR2 (2000) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR2 (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_ASSOCIATION PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_ASSOCIATION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_ASSOCIATION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_ASSOCIATION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_ASSOCIATION_SEQUENCE.nextval INTO :NEW.REG_ASSOCIATION_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER,
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR2(256),
|
||||||
|
REG_RESOURCE_VIDS BLOB NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE INDEX REG_SNAPSHOT_PATH_ID ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE REG_SNAPSHOT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER REG_SNAPSHOT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON REG_SNAPSHOT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT REG_SNAPSHOT_SEQUENCE.nextval INTO :NEW.REG_SNAPSHOT_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE NUMBER(1) DEFAULT 0,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG BLOB,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_TENANT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_TENANT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_TENANT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_TENANT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_DOMAIN_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE OR REPLACE TRIGGER UM_DOMAIN_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_DOMAIN
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_DOMAIN_SEQUENCE.nextval INTO :NEW.UM_DOMAIN_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR2(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR2(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE NUMBER(1) DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE NUMBER(1) DEFAULT 0,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID))
|
||||||
|
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE OR REPLACE TRIGGER UM_SYSTEM_USER_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_SYSTEM_USER
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_SYSTEM_USER_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ATTR_NAME VARCHAR2(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR2(255),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_ATTRIBUTE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID)
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_ATTRIBUTE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER_ATTRIBUTE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_ATTRIBUTE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ROLE_NAME VARCHAR2(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE CHAR(1) DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_ROLE
|
||||||
|
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_MODULE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE OR REPLACE TRIGGER UM_MODULE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_MODULE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_MODULE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_RESOURCE_ID VARCHAR2(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR2(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_PERMISSION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
--FOREIGN KEY (UM_ROLE_ID) REFERENCES UM_ROLE(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_ROLE_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_ROLE_PERMISSION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_ROLE_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_ROLE_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_PERMISSION_ID, UM_USER_NAME, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
--FOREIGN KEY (UM_USER_ID) REFERENCES UM_USER(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_PERMISSION_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER_PERMISSION
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID))
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_USER_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_ACCOUNT_MAPPING_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_ACCOUNT_MAPPING_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_ACCOUNT_MAPPING
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_ACCOUNT_MAPPING_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_DIALECT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_DIALECT_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_DIALECT
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_DIALECT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_MAPPED_ATTRIBUTE_DOMAIN, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_CLAIM_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_CLAIM_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_CLAIM
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_CLAIM_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_DIALECT_ID INTEGER,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_PROFILE_CONFIG_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_PROFILE_CONFIG_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_PROFILE_CONFIG
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_PROFILE_CONFIG_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_CLAIM_BEHAVIOR_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_CLAIM_BEHAVIOR_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_CLAIM_BEHAVIOR
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_CLAIM_BEHAVIOR_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_HYBRID_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_HYBRID_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_HYBRID_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_HYBRID_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID,UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_HYBRID_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_HYBRID_USER_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_HYBRID_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_HYBRID_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
CREATE SEQUENCE UM_HYBRID_REMEMBER_ME_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_HYBRID_REMEMBER_ME_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_HYBRID_REMEMBER_ME
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_HYBRID_REMEMBER_ME_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_SYSTEM_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_SYSTEM_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_SYSTEM_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER,
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
)
|
||||||
|
/
|
||||||
|
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
|
||||||
|
/
|
||||||
|
CREATE OR REPLACE TRIGGER UM_SYSTEM_USER_ROLE_TRIGGER
|
||||||
|
BEFORE INSERT
|
||||||
|
ON UM_SYSTEM_USER_ROLE
|
||||||
|
REFERENCING NEW AS NEW
|
||||||
|
FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
SELECT UM_SYSTEM_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
|
||||||
|
END;
|
||||||
|
/
|
@ -0,0 +1,561 @@
|
|||||||
|
DROP TABLE IF EXISTS REG_CLUSTER_LOCK;
|
||||||
|
CREATE TABLE REG_CLUSTER_LOCK (
|
||||||
|
REG_LOCK_NAME VARCHAR (20),
|
||||||
|
REG_LOCK_STATUS VARCHAR (20),
|
||||||
|
REG_LOCKED_TIME TIMESTAMP,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOCK_NAME)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_LOG;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_LOG_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_LOG_PK_SEQ;
|
||||||
|
CREATE TABLE REG_LOG (
|
||||||
|
REG_LOG_ID INTEGER DEFAULT NEXTVAL('REG_LOG_PK_SEQ'),
|
||||||
|
REG_PATH VARCHAR (2000),
|
||||||
|
REG_USER_ID VARCHAR (31) NOT NULL,
|
||||||
|
REG_LOGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_ACTION INTEGER NOT NULL,
|
||||||
|
REG_ACTION_DATA VARCHAR (500),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX REG_LOG_IND_BY_REG_LOGTIME ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_PATH;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_PATH_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_PATH_PK_SEQ;
|
||||||
|
CREATE TABLE REG_PATH(
|
||||||
|
REG_PATH_ID INTEGER DEFAULT NEXTVAL('REG_PATH_PK_SEQ'),
|
||||||
|
REG_PATH_VALUE VARCHAR(2000) NOT NULL,
|
||||||
|
REG_PATH_PARENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_CONTENT;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_CONTENT_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_CONTENT_PK_SEQ;
|
||||||
|
CREATE TABLE REG_CONTENT (
|
||||||
|
REG_CONTENT_ID INTEGER DEFAULT NEXTVAL('REG_CONTENT_PK_SEQ'),
|
||||||
|
REG_CONTENT_DATA BYTEA,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_CONTENT_HISTORY;
|
||||||
|
CREATE TABLE REG_CONTENT_HISTORY (
|
||||||
|
REG_CONTENT_ID INTEGER NOT NULL,
|
||||||
|
REG_CONTENT_DATA BYTEA,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RESOURCE;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_RESOURCE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_RESOURCE_PK_SEQ;
|
||||||
|
CREATE TABLE REG_RESOURCE (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER DEFAULT NEXTVAL('REG_RESOURCE_PK_SEQ'),
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_UUID ON REG_RESOURCE(REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TENANT ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
|
||||||
|
CREATE INDEX REG_RESOURCE_IND_BY_TYPE ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RESOURCE_HISTORY;
|
||||||
|
CREATE TABLE REG_RESOURCE_HISTORY (
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_NAME VARCHAR(256),
|
||||||
|
REG_VERSION INTEGER NOT NULL,
|
||||||
|
REG_MEDIA_TYPE VARCHAR(500),
|
||||||
|
REG_CREATOR VARCHAR(31) NOT NULL,
|
||||||
|
REG_CREATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_LAST_UPDATOR VARCHAR(31),
|
||||||
|
REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_DESCRIPTION VARCHAR(1000),
|
||||||
|
REG_CONTENT_ID INTEGER,
|
||||||
|
REG_DELETED SMALLINT,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
REG_UUID VARCHAR(100) NOT NULL,
|
||||||
|
CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_COMMENT;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_COMMENT_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_COMMENT_PK_SEQ;
|
||||||
|
CREATE TABLE REG_COMMENT (
|
||||||
|
REG_ID INTEGER DEFAULT NEXTVAL('REG_COMMENT_PK_SEQ'),
|
||||||
|
REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_COMMENTED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RESOURCE_COMMENT;
|
||||||
|
CREATE TABLE REG_RESOURCE_COMMENT (
|
||||||
|
REG_COMMENT_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RATING;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_RATING_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_RATING_PK_SEQ;
|
||||||
|
CREATE TABLE REG_RATING (
|
||||||
|
REG_ID INTEGER DEFAULT NEXTVAL('REG_RATING_PK_SEQ'),
|
||||||
|
REG_RATING INTEGER NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_RATED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RESOURCE_RATING;
|
||||||
|
CREATE TABLE REG_RESOURCE_RATING (
|
||||||
|
REG_RATING_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_TAG;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_TAG_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_TAG_PK_SEQ;
|
||||||
|
CREATE TABLE REG_TAG (
|
||||||
|
REG_ID INTEGER DEFAULT NEXTVAL('REG_TAG_PK_SEQ'),
|
||||||
|
REG_TAG_NAME VARCHAR(500) NOT NULL,
|
||||||
|
REG_USER_ID VARCHAR(31) NOT NULL,
|
||||||
|
REG_TAGGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RESOURCE_TAG;
|
||||||
|
CREATE TABLE REG_RESOURCE_TAG (
|
||||||
|
REG_TAG_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_PROPERTY;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_PROPERTY_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_PROPERTY_PK_SEQ;
|
||||||
|
CREATE TABLE REG_PROPERTY (
|
||||||
|
REG_ID INTEGER DEFAULT NEXTVAL('REG_PROPERTY_PK_SEQ'),
|
||||||
|
REG_NAME VARCHAR(100) NOT NULL,
|
||||||
|
REG_VALUE VARCHAR(10000),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_RESOURCE_PROPERTY;
|
||||||
|
CREATE TABLE REG_RESOURCE_PROPERTY (
|
||||||
|
REG_PROPERTY_ID INTEGER NOT NULL,
|
||||||
|
REG_VERSION INTEGER,
|
||||||
|
REG_PATH_ID INTEGER,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(256),
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_ASSOCIATION;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_ASSOCIATION_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_ASSOCIATION_PK_SEQ;
|
||||||
|
CREATE TABLE REG_ASSOCIATION (
|
||||||
|
REG_ASSOCIATION_ID INTEGER DEFAULT NEXTVAL('REG_ASSOCIATION_PK_SEQ'),
|
||||||
|
REG_SOURCEPATH VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TARGETPATH VARCHAR (2000) NOT NULL,
|
||||||
|
REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS REG_SNAPSHOT;
|
||||||
|
DROP SEQUENCE IF EXISTS REG_SNAPSHOT_PK_SEQ;
|
||||||
|
CREATE SEQUENCE REG_SNAPSHOT_PK_SEQ;
|
||||||
|
CREATE TABLE REG_SNAPSHOT (
|
||||||
|
REG_SNAPSHOT_ID INTEGER DEFAULT NEXTVAL('REG_SNAPSHOT_PK_SEQ'),
|
||||||
|
REG_PATH_ID INTEGER NOT NULL,
|
||||||
|
REG_RESOURCE_NAME VARCHAR(255),
|
||||||
|
REG_RESOURCE_VIDS BYTEA NOT NULL,
|
||||||
|
REG_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
|
||||||
|
|
||||||
|
ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
-- ################################
|
||||||
|
-- USER MANAGER TABLES
|
||||||
|
-- ################################
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_TENANT;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_TENANT_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_TENANT_PK_SEQ;
|
||||||
|
CREATE TABLE UM_TENANT (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_TENANT_PK_SEQ'),
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_EMAIL VARCHAR(255),
|
||||||
|
UM_ACTIVE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CREATED_DATE TIMESTAMP NOT NULL,
|
||||||
|
UM_USER_CONFIG BYTEA,
|
||||||
|
PRIMARY KEY (UM_ID),
|
||||||
|
UNIQUE(UM_DOMAIN_NAME));
|
||||||
|
|
||||||
|
CREATE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
|
||||||
|
ON UM_TENANT (UM_DOMAIN_NAME);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_DOMAIN;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_DOMAIN_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_DOMAIN_PK_SEQ;
|
||||||
|
CREATE TABLE UM_DOMAIN(
|
||||||
|
UM_DOMAIN_ID INTEGER DEFAULT NEXTVAL('UM_DOMAIN_PK_SEQ'),
|
||||||
|
UM_DOMAIN_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_USER CASCADE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_USER_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_USER_PK_SEQ;
|
||||||
|
CREATE TABLE UM_USER (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_PK_SEQ'),
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_SYSTEM_USER CASCADE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_SYSTEM_USER_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_PK_SEQ;
|
||||||
|
CREATE TABLE UM_SYSTEM_USER (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_SYSTEM_USER_PK_SEQ'),
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_USER_PASSWORD VARCHAR(255) NOT NULL,
|
||||||
|
UM_SALT_VALUE VARCHAR(31),
|
||||||
|
UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
|
||||||
|
UM_CHANGED_TIME TIMESTAMP NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_ROLE CASCADE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_ROLE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_ROLE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_ROLE (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_ROLE_PK_SEQ'),
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID),
|
||||||
|
UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_MODULE CASCADE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_MODULE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_MODULE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_MODULE(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_MODULE_PK_SEQ'),
|
||||||
|
UM_MODULE_NAME VARCHAR(100),
|
||||||
|
UNIQUE(UM_MODULE_NAME),
|
||||||
|
PRIMARY KEY(UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_MODULE_ACTIONS CASCADE;
|
||||||
|
CREATE TABLE UM_MODULE_ACTIONS(
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_MODULE_ID INTEGER NOT NULL,
|
||||||
|
PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
|
||||||
|
FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_PERMISSION CASCADE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_PERMISSION_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_PERMISSION_PK_SEQ;
|
||||||
|
CREATE TABLE UM_PERMISSION (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_PERMISSION_PK_SEQ'),
|
||||||
|
UM_RESOURCE_ID VARCHAR(255) NOT NULL,
|
||||||
|
UM_ACTION VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_MODULE_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION
|
||||||
|
ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_ROLE_PERMISSION;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_ROLE_PERMISSION_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_ROLE_PERMISSION_PK_SEQ;
|
||||||
|
CREATE TABLE UM_ROLE_PERMISSION (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_ROLE_PERMISSION_PK_SEQ'),
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
|
||||||
|
DROP TABLE IF EXISTS UM_USER_PERMISSION;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_USER_PERMISSION_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_USER_PERMISSION_PK_SEQ;
|
||||||
|
CREATE TABLE UM_USER_PERMISSION (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_PERMISSION_PK_SEQ'),
|
||||||
|
UM_PERMISSION_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_IS_ALLOWED SMALLINT NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
|
||||||
|
DROP TABLE IF EXISTS UM_USER_ROLE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_USER_ROLE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_USER_ROLE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_USER_ROLE (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_ROLE_PK_SEQ'),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_SHARED_USER_ROLE;
|
||||||
|
CREATE TABLE UM_SHARED_USER_ROLE(
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_ROLE_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE ,
|
||||||
|
FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_ACCOUNT_MAPPING;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_ACCOUNT_MAPPING_SEQ;
|
||||||
|
CREATE SEQUENCE UM_ACCOUNT_MAPPING_SEQ;
|
||||||
|
CREATE TABLE UM_ACCOUNT_MAPPING(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_ACCOUNT_MAPPING_SEQ'),
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER NOT NULL,
|
||||||
|
UM_USER_STORE_DOMAIN VARCHAR(100),
|
||||||
|
UM_ACC_LINK_ID INTEGER NOT NULL,
|
||||||
|
UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
|
||||||
|
FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_USER_ATTRIBUTE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_USER_ATTRIBUTE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_USER_ATTRIBUTE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_USER_ATTRIBUTE (
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_ATTRIBUTE_PK_SEQ'),
|
||||||
|
UM_ATTR_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_ATTR_VALUE VARCHAR(1024),
|
||||||
|
UM_PROFILE_ID VARCHAR(255),
|
||||||
|
UM_USER_ID INTEGER,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_DIALECT CASCADE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_DIALECT_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_DIALECT_PK_SEQ;
|
||||||
|
CREATE TABLE UM_DIALECT(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_DIALECT_PK_SEQ'),
|
||||||
|
UM_DIALECT_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_CLAIM;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_CLAIM_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_CLAIM_PK_SEQ;
|
||||||
|
CREATE TABLE UM_CLAIM(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_CLAIM_PK_SEQ'),
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_CLAIM_URI VARCHAR(255) NOT NULL,
|
||||||
|
UM_DISPLAY_TAG VARCHAR(255),
|
||||||
|
UM_DESCRIPTION VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
|
||||||
|
UM_MAPPED_ATTRIBUTE VARCHAR(255),
|
||||||
|
UM_REG_EX VARCHAR(255),
|
||||||
|
UM_SUPPORTED SMALLINT,
|
||||||
|
UM_REQUIRED SMALLINT,
|
||||||
|
UM_DISPLAY_ORDER INTEGER,
|
||||||
|
UM_CHECKED_ATTRIBUTE SMALLINT,
|
||||||
|
UM_READ_ONLY SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_PROFILE_CONFIG;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_PROFILE_CONFIG_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_PROFILE_CONFIG_PK_SEQ;
|
||||||
|
CREATE TABLE UM_PROFILE_CONFIG(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_PROFILE_CONFIG_PK_SEQ'),
|
||||||
|
UM_DIALECT_ID INTEGER NOT NULL,
|
||||||
|
UM_PROFILE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_CLAIM_BEHAVIOR;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_CLAIM_BEHAVIOR_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_CLAIM_BEHAVIOR_PK_SEQ;
|
||||||
|
CREATE TABLE UM_CLAIM_BEHAVIOR(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_CLAIM_BEHAVIOR_PK_SEQ'),
|
||||||
|
UM_PROFILE_ID INTEGER,
|
||||||
|
UM_CLAIM_ID INTEGER,
|
||||||
|
UM_BEHAVIOUR SMALLINT,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_HYBRID_ROLE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_HYBRID_ROLE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_HYBRID_ROLE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_HYBRID_ROLE(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_HYBRID_ROLE_PK_SEQ'),
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_HYBRID_USER_ROLE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_HYBRID_USER_ROLE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_HYBRID_USER_ROLE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_HYBRID_USER_ROLE(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_HYBRID_USER_ROLE_PK_SEQ'),
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UM_DOMAIN_ID INTEGER,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_SYSTEM_ROLE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_SYSTEM_ROLE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_ROLE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_SYSTEM_ROLE(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_SYSTEM_ROLE_PK_SEQ'),
|
||||||
|
UM_ROLE_NAME VARCHAR(255),
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_SYSTEM_USER_ROLE;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_SYSTEM_USER_ROLE_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_SYSTEM_USER_ROLE_PK_SEQ;
|
||||||
|
CREATE TABLE UM_SYSTEM_USER_ROLE(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_SYSTEM_USER_ROLE_PK_SEQ'),
|
||||||
|
UM_USER_NAME VARCHAR(255),
|
||||||
|
UM_ROLE_ID INTEGER NOT NULL,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
|
||||||
|
FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS UM_HYBRID_REMEMBER_ME;
|
||||||
|
DROP SEQUENCE IF EXISTS UM_HYBRID_REMEMBER_ME_PK_SEQ;
|
||||||
|
CREATE SEQUENCE UM_HYBRID_REMEMBER_ME_PK_SEQ;
|
||||||
|
CREATE TABLE UM_HYBRID_REMEMBER_ME(
|
||||||
|
UM_ID INTEGER DEFAULT NEXTVAL('UM_HYBRID_REMEMBER_ME_PK_SEQ'),
|
||||||
|
UM_USER_NAME VARCHAR(255) NOT NULL,
|
||||||
|
UM_COOKIE_VALUE VARCHAR(1024),
|
||||||
|
UM_CREATED_TIME TIMESTAMP,
|
||||||
|
UM_TENANT_ID INTEGER DEFAULT 0,
|
||||||
|
PRIMARY KEY (UM_ID, UM_TENANT_ID)
|
||||||
|
);
|
Loading…
Reference in new issue