Skip to content

Commit

Permalink
Full and upgrade DB scripts for Oracle.
Browse files Browse the repository at this point in the history
  • Loading branch information
mederly committed Nov 30, 2015
1 parent b3addd4 commit 0d615dc
Show file tree
Hide file tree
Showing 6 changed files with 202 additions and 130 deletions.
Expand Up @@ -50,6 +50,12 @@ CREATE TABLE m_assignment (
modifyChannel VARCHAR2(255 CHAR),
modifyTimestamp TIMESTAMP,
orderValue NUMBER(10, 0),
orgRef_relation VARCHAR2(157 CHAR),
orgRef_targetOid VARCHAR2(36 CHAR),
orgRef_type NUMBER(10, 0),
resourceRef_relation VARCHAR2(157 CHAR),
resourceRef_targetOid VARCHAR2(36 CHAR),
resourceRef_type NUMBER(10, 0),
targetRef_relation VARCHAR2(157 CHAR),
targetRef_targetOid VARCHAR2(36 CHAR),
targetRef_type NUMBER(10, 0),
Expand Down Expand Up @@ -165,6 +171,11 @@ CREATE TABLE m_audit_delta (
deltaOid VARCHAR2(36 CHAR),
deltaType NUMBER(10, 0),
fullResult CLOB,
objectName_norm VARCHAR2(255 CHAR),
objectName_orig VARCHAR2(255 CHAR),
resourceName_norm VARCHAR2(255 CHAR),
resourceName_orig VARCHAR2(255 CHAR),
resourceOid VARCHAR2(36 CHAR),
status NUMBER(10, 0),
PRIMARY KEY (checksum, record_id)
) INITRANS 30;
Expand Down Expand Up @@ -243,10 +254,17 @@ CREATE TABLE m_focus (
validTo TIMESTAMP,
validityChangeTimestamp TIMESTAMP,
validityStatus NUMBER(10, 0),
hasPhoto NUMBER(1, 0) DEFAULT FALSE NOT NULL,
oid VARCHAR2(36 CHAR) NOT NULL,
PRIMARY KEY (oid)
) INITRANS 30;

CREATE TABLE m_focus_photo (
owner_oid VARCHAR2(36 CHAR) NOT NULL,
photo BLOB,
PRIMARY KEY (owner_oid)
) INITRANS 30;

CREATE TABLE m_generic_object (
name_norm VARCHAR2(255 CHAR),
name_orig VARCHAR2(255 CHAR),
Expand Down Expand Up @@ -478,6 +496,13 @@ CREATE TABLE m_security_policy (
PRIMARY KEY (oid)
) INITRANS 30;

CREATE TABLE m_sequence (
name_norm VARCHAR2(255 CHAR),
name_orig VARCHAR2(255 CHAR),
oid VARCHAR2(36 CHAR) NOT NULL,
PRIMARY KEY (oid)
) INITRANS 30;

CREATE TABLE m_shadow (
attemptNumber NUMBER(10, 0),
dead NUMBER(1, 0),
Expand Down Expand Up @@ -559,7 +584,6 @@ CREATE TABLE m_user (
fullName_orig VARCHAR2(255 CHAR),
givenName_norm VARCHAR2(255 CHAR),
givenName_orig VARCHAR2(255 CHAR),
hasPhoto NUMBER(1, 0) NOT NULL,
honorificPrefix_norm VARCHAR2(255 CHAR),
honorificPrefix_orig VARCHAR2(255 CHAR),
honorificSuffix_norm VARCHAR2(255 CHAR),
Expand Down Expand Up @@ -598,12 +622,6 @@ CREATE TABLE m_user_organizational_unit (
orig VARCHAR2(255 CHAR)
) INITRANS 30;

CREATE TABLE m_user_photo (
owner_oid VARCHAR2(36 CHAR) NOT NULL,
photo BLOB,
PRIMARY KEY (owner_oid)
) INITRANS 30;

CREATE TABLE m_value_policy (
name_norm VARCHAR2(255 CHAR),
name_orig VARCHAR2(255 CHAR),
Expand All @@ -623,6 +641,14 @@ CREATE INDEX iAssignmentAdministrative ON m_assignment (administrativeStatus) IN

CREATE INDEX iAssignmentEffective ON m_assignment (effectiveStatus) INITRANS 30;

CREATE INDEX iTargetRefTargetOid ON m_assignment (targetRef_targetOid) INITRANS 30;

CREATE INDEX iTenantRefTargetOid ON m_assignment (tenantRef_targetOid) INITRANS 30;

CREATE INDEX iOrgRefTargetOid ON m_assignment (orgRef_targetOid) INITRANS 30;

CREATE INDEX iResourceRefTargetOid ON m_assignment (resourceRef_targetOid) INITRANS 30;

CREATE INDEX iAExtensionBoolean ON m_assignment_ext_boolean (extensionType, eName, booleanValue) INITRANS 30;

CREATE INDEX iAExtensionDate ON m_assignment_ext_date (extensionType, eName, dateValue) INITRANS 30;
Expand All @@ -637,6 +663,8 @@ CREATE INDEX iAExtensionString ON m_assignment_ext_string (extensionType, eName,

CREATE INDEX iAssignmentReferenceTargetOid ON m_assignment_reference (targetOid) INITRANS 30;

CREATE INDEX iTimestampValue ON m_audit_event (timestampValue) INITRANS 30;

ALTER TABLE m_connector_host
ADD CONSTRAINT uc_connector_host_name UNIQUE (name_norm) INITRANS 30;

Expand Down Expand Up @@ -718,6 +746,9 @@ ADD CONSTRAINT uc_role_name UNIQUE (name_norm) INITRANS 30;
ALTER TABLE m_security_policy
ADD CONSTRAINT uc_security_policy_name UNIQUE (name_norm) INITRANS 30;

ALTER TABLE m_sequence
ADD CONSTRAINT uc_sequence_name UNIQUE (name_norm) INITRANS 30;

CREATE INDEX iShadowResourceRef ON m_shadow (resourceRef_targetOid) INITRANS 30;

CREATE INDEX iShadowDead ON m_shadow (dead) INITRANS 30;
Expand Down Expand Up @@ -830,6 +861,11 @@ ADD CONSTRAINT fk_focus
FOREIGN KEY (oid)
REFERENCES m_object;

ALTER TABLE m_focus_photo
ADD CONSTRAINT fk_focus_photo
FOREIGN KEY (owner_oid)
REFERENCES m_focus;

ALTER TABLE m_generic_object
ADD CONSTRAINT fk_generic_object
FOREIGN KEY (oid)
Expand Down Expand Up @@ -935,6 +971,11 @@ ADD CONSTRAINT fk_security_policy
FOREIGN KEY (oid)
REFERENCES m_object;

ALTER TABLE m_sequence
ADD CONSTRAINT fk_sequence
FOREIGN KEY (oid)
REFERENCES m_object;

ALTER TABLE m_shadow
ADD CONSTRAINT fk_shadow
FOREIGN KEY (oid)
Expand Down Expand Up @@ -980,11 +1021,6 @@ ADD CONSTRAINT fk_user_org_unit
FOREIGN KEY (user_oid)
REFERENCES m_user;

ALTER TABLE m_user_photo
ADD CONSTRAINT fk_user_photo
FOREIGN KEY (owner_oid)
REFERENCES m_user;

ALTER TABLE m_value_policy
ADD CONSTRAINT fk_value_policy
FOREIGN KEY (oid)
Expand Down
32 changes: 0 additions & 32 deletions config/sql/_all/oracle-upgrade-3.1.1-3.2.sql

This file was deleted.

88 changes: 46 additions & 42 deletions config/sql/_all/oracle-upgrade-3.2-3.3.sql
@@ -1,56 +1,60 @@
create table m_sequence (
name_norm varchar2(255 char),
name_orig varchar2(255 char),
oid varchar2(36 char) not null,
primary key (oid)
CREATE TABLE m_sequence (
name_norm VARCHAR2(255 CHAR),
name_orig VARCHAR2(255 CHAR),
oid VARCHAR2(36 CHAR) NOT NULL,
PRIMARY KEY (oid)
);

alter table m_sequence
add constraint uc_sequence_name unique (name_norm);
ALTER TABLE m_sequence
ADD CONSTRAINT uc_sequence_name UNIQUE (name_norm);

alter table m_sequence
add constraint fk_sequence
foreign key (oid)
references m_object;
ALTER TABLE m_sequence
ADD CONSTRAINT fk_sequence
FOREIGN KEY (oid)
REFERENCES m_object;


ALTER TABLE m_user_photo
DROP CONSTRAINT fk_user_photo;

alter table m_user_photo
drop constraint fk_user_photo;
RENAME m_user_photo TO m_focus_photo;

rename m_user_photo to m_focus_photo;
ALTER TABLE m_focus_photo
ADD CONSTRAINT fk_focus_photo
FOREIGN KEY (owner_oid)
REFERENCES m_focus;

alter table m_focus_photo
add constraint fk_focus_photo
foreign key (owner_oid)
references m_focus;
ALTER TABLE m_focus ADD hasPhoto NUMBER(1, 0) DEFAULT 0 NOT NULL;
UPDATE m_focus
SET hasPhoto = 0;
UPDATE m_focus
SET hasPhoto = (SELECT hasPhoto
FROM m_user
WHERE m_user.oid = m_focus.oid)
WHERE m_focus.oid IN (SELECT oid
FROM m_user);

alter table m_focus add hasPhoto number(1,0) default 0 not null;
update m_focus set hasPhoto = 0;
update m_focus set hasPhoto = (select hasPhoto from m_user where m_user.oid = m_focus.oid)
where m_focus.oid in (select oid from m_user);
ALTER TABLE m_user DROP COLUMN hasPhoto;

alter table m_user drop column hasPhoto;

ALTER TABLE m_assignment ADD (
orgRef_relation VARCHAR2(157 CHAR),
orgRef_targetOid VARCHAR2(36 CHAR),
orgRef_type NUMBER(10, 0),
resourceRef_relation VARCHAR2(157 CHAR),
resourceRef_targetOid VARCHAR2(36 CHAR),
resourceRef_type NUMBER(10, 0));

alter table m_assignment add (
orgRef_relation varchar2(157 char),
orgRef_targetOid varchar2(36 char),
orgRef_type number(10,0),
resourceRef_relation varchar2(157 char),
resourceRef_targetOid varchar2(36 char),
resourceRef_type number(10,0));
CREATE INDEX iTargetRefTargetOid ON m_assignment (targetRef_targetOid);
CREATE INDEX iTenantRefTargetOid ON m_assignment (tenantRef_targetOid);
CREATE INDEX iOrgRefTargetOid ON m_assignment (orgRef_targetOid);
CREATE INDEX iResourceRefTargetOid ON m_assignment (resourceRef_targetOid);

create index iTargetRefTargetOid on m_assignment (targetRef_targetOid);
create index iTenantRefTargetOid on m_assignment (tenantRef_targetOid);
create index iOrgRefTargetOid on m_assignment (orgRef_targetOid);
create index iResourceRefTargetOid on m_assignment (resourceRef_targetOid);
CREATE INDEX iTimestampValue ON m_audit_event (timestampValue);

create index iTimestampValue on m_audit_event (timestampValue);

alter table m_audit_delta add (
objectName_norm varchar2(255 char),
objectName_orig varchar2(255 char),
resourceName_norm varchar2(255 char),
resourceName_orig varchar2(255 char),
resourceOid varchar2(36 char));
ALTER TABLE m_audit_delta ADD (
objectName_norm VARCHAR2(255 CHAR),
objectName_orig VARCHAR2(255 CHAR),
resourceName_norm VARCHAR2(255 CHAR),
resourceName_orig VARCHAR2(255 CHAR),
resourceOid VARCHAR2(36 CHAR));

0 comments on commit 0d615dc

Please sign in to comment.