From 0f24ca40079135c67158ba7040312a49dc2d65a9 Mon Sep 17 00:00:00 2001 From: Pavol Mederly Date: Thu, 18 Jun 2015 09:27:01 +0200 Subject: [PATCH] Updated "all-in-one" DB scripts and repo test cleanup procedures. --- .../_all/{h2-3.1.1-all.sql => h2-3.2-all.sql} | 33 +++ config/sql/_all/h2-upgrade-3.1.1-3.2.sql | 32 +++ ...{mysql-3.1.1-all.sql => mysql-3.2-all.sql} | 39 ++++ config/sql/_all/mysql-upgrade-3.1-3.1.1.sql | 147 ------------- config/sql/_all/mysql-upgrade-3.1.1-3.2.sql | 38 ++++ ...racle-3.1.1-all.sql => oracle-3.2-all.sql} | 33 +++ config/sql/_all/oracle-upgrade-3.1-3.1.1.sql | 98 --------- config/sql/_all/oracle-upgrade-3.1.1-3.2.sql | 32 +++ ...l-3.1.1-all.sql => postgresql-3.2-all.sql} | 33 +++ .../sql/_all/postgresql-upgrade-3.1-3.1.1.sql | 96 -------- .../sql/_all/postgresql-upgrade-3.1.1-3.2.sql | 32 +++ ...er-3.1.1-all.sql => sqlserver-3.2-all.sql} | 33 +++ .../sql/_all/sqlserver-upgrade-3.1-3.1.1.sql | 208 ------------------ .../sql/_all/sqlserver-upgrade-3.1.1-3.2.sql | 32 +++ .../sql-procedures/mysql.sql | 2 + .../sql-procedures/postgresql.sql | 2 + .../sql-procedures/sqlserver.sql | 2 + 17 files changed, 343 insertions(+), 549 deletions(-) rename config/sql/_all/{h2-3.1.1-all.sql => h2-3.2-all.sql} (96%) create mode 100644 config/sql/_all/h2-upgrade-3.1.1-3.2.sql rename config/sql/_all/{mysql-3.1.1-all.sql => mysql-3.2-all.sql} (98%) delete mode 100644 config/sql/_all/mysql-upgrade-3.1-3.1.1.sql create mode 100644 config/sql/_all/mysql-upgrade-3.1.1-3.2.sql rename config/sql/_all/{oracle-3.1.1-all.sql => oracle-3.2-all.sql} (98%) delete mode 100644 config/sql/_all/oracle-upgrade-3.1-3.1.1.sql create mode 100644 config/sql/_all/oracle-upgrade-3.1.1-3.2.sql rename config/sql/_all/{postgresql-3.1.1-all.sql => postgresql-3.2-all.sql} (98%) delete mode 100644 config/sql/_all/postgresql-upgrade-3.1-3.1.1.sql create mode 100644 config/sql/_all/postgresql-upgrade-3.1.1-3.2.sql rename config/sql/_all/{sqlserver-3.1.1-all.sql => sqlserver-3.2-all.sql} (98%) delete mode 100644 config/sql/_all/sqlserver-upgrade-3.1-3.1.1.sql create mode 100644 config/sql/_all/sqlserver-upgrade-3.1.1-3.2.sql diff --git a/config/sql/_all/h2-3.1.1-all.sql b/config/sql/_all/h2-3.2-all.sql similarity index 96% rename from config/sql/_all/h2-3.1.1-all.sql rename to config/sql/_all/h2-3.2-all.sql index d4b5d87d90c..9aac1deb1a0 100644 --- a/config/sql/_all/h2-3.1.1-all.sql +++ b/config/sql/_all/h2-3.2-all.sql @@ -2,6 +2,23 @@ -- So, contrary to all the other databases, this file contains only midPoint-related scripts. -- If you want to add Quartz and Activiti-related tables, please use files from quartz and activiti directories, respectively. +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR(157), + definitionRef_targetOid VARCHAR(36), + definitionRef_type INTEGER, + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + CREATE TABLE m_abstract_role ( approvalProcess VARCHAR(255), requestable BOOLEAN, @@ -588,6 +605,12 @@ CREATE TABLE m_value_policy ( PRIMARY KEY (oid) ); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + CREATE INDEX iRequestable ON m_abstract_role (requestable); CREATE INDEX iAssignmentAdministrative ON m_assignment (administrativeStatus); @@ -716,6 +739,16 @@ CREATE INDEX iLocality ON m_user (locality_orig); ALTER TABLE m_value_policy ADD CONSTRAINT uc_value_policy_name UNIQUE (name_norm); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; + ALTER TABLE m_abstract_role ADD CONSTRAINT fk_abstract_role FOREIGN KEY (oid) diff --git a/config/sql/_all/h2-upgrade-3.1.1-3.2.sql b/config/sql/_all/h2-upgrade-3.1.1-3.2.sql new file mode 100644 index 00000000000..70b1a3e0409 --- /dev/null +++ b/config/sql/_all/h2-upgrade-3.1.1-3.2.sql @@ -0,0 +1,32 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR(157), + definitionRef_targetOid VARCHAR(36), + definitionRef_type INTEGER, + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; diff --git a/config/sql/_all/mysql-3.1.1-all.sql b/config/sql/_all/mysql-3.2-all.sql similarity index 98% rename from config/sql/_all/mysql-3.1.1-all.sql rename to config/sql/_all/mysql-3.2-all.sql index 5a9d5889eb5..437a502921d 100644 --- a/config/sql/_all/mysql-3.1.1-all.sql +++ b/config/sql/_all/mysql-3.2-all.sql @@ -11,6 +11,29 @@ # remove iAncestor and iDescendant index, they are the same as FK for that fields +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +) + DEFAULT CHARACTER SET utf8 + COLLATE utf8_bin + ENGINE=InnoDB; + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR(157), + definitionRef_targetOid VARCHAR(36), + definitionRef_type INTEGER, + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +) + DEFAULT CHARACTER SET utf8 + COLLATE utf8_bin + ENGINE=InnoDB; + CREATE TABLE m_abstract_role ( approvalProcess VARCHAR(255), requestable BIT, @@ -744,6 +767,12 @@ CREATE TABLE m_value_policy ( COLLATE utf8_bin ENGINE = InnoDB; +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + CREATE INDEX iRequestable ON m_abstract_role (requestable); CREATE INDEX iAssignmentAdministrative ON m_assignment (administrativeStatus); @@ -874,6 +903,16 @@ CREATE INDEX iLocality ON m_user (locality_orig); ALTER TABLE m_value_policy ADD CONSTRAINT uc_value_policy_name UNIQUE (name_norm); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object (oid); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object (oid); + ALTER TABLE m_abstract_role ADD CONSTRAINT fk_abstract_role FOREIGN KEY (oid) diff --git a/config/sql/_all/mysql-upgrade-3.1-3.1.1.sql b/config/sql/_all/mysql-upgrade-3.1-3.1.1.sql deleted file mode 100644 index fe651f7b45d..00000000000 --- a/config/sql/_all/mysql-upgrade-3.1-3.1.1.sql +++ /dev/null @@ -1,147 +0,0 @@ -CREATE TABLE m_lookup_table ( - name_norm VARCHAR(255), - name_orig VARCHAR(255), - oid VARCHAR(36) NOT NULL, - PRIMARY KEY (oid) -) - DEFAULT CHARACTER SET utf8 - COLLATE utf8_bin - ENGINE = InnoDB; - -CREATE TABLE m_lookup_table_row ( - id INTEGER NOT NULL, - owner_oid VARCHAR(36) NOT NULL, - row_key VARCHAR(255), - label_norm VARCHAR(255), - label_orig VARCHAR(255), - lastChangeTimestamp DATETIME(6), - row_value VARCHAR(255), - PRIMARY KEY (id, owner_oid) -) - DEFAULT CHARACTER SET utf8 - COLLATE utf8_bin - ENGINE = InnoDB; - -ALTER TABLE m_lookup_table -ADD CONSTRAINT uc_lookup_name UNIQUE (name_norm); - -ALTER TABLE m_lookup_table -ADD CONSTRAINT fk_lookup_table -FOREIGN KEY (oid) -REFERENCES m_object (oid); - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT uc_row_key UNIQUE (row_key); - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT fk_lookup_table_owner -FOREIGN KEY (owner_oid) -REFERENCES m_lookup_table (oid); - -ALTER TABLE m_assignment_reference -DROP PRIMARY KEY, -ADD PRIMARY KEY (owner_id, owner_owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_reference -DROP PRIMARY KEY, -ADD PRIMARY KEY (owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_assignment_reference DROP FOREIGN KEY fk_assignment_reference; -ALTER TABLE m_assignment_reference MODIFY owner_id INTEGER; -ALTER TABLE m_assignment MODIFY id INTEGER; -ALTER TABLE m_assignment_reference - ADD CONSTRAINT fk_assignment_reference - FOREIGN KEY (owner_id, owner_owner_oid) - REFERENCES m_assignment (id, owner_oid); - -ALTER TABLE m_assignment MODIFY extId INTEGER; - -ALTER TABLE m_assignment_ext_date DROP FOREIGN KEY fk_assignment_ext_date; -ALTER TABLE m_assignment_ext_long DROP FOREIGN KEY fk_assignment_ext_long; -ALTER TABLE m_assignment_ext_poly DROP FOREIGN KEY fk_assignment_ext_poly; -ALTER TABLE m_assignment_ext_reference DROP FOREIGN KEY fk_assignment_ext_reference; -ALTER TABLE m_assignment_ext_string DROP FOREIGN KEY fk_assignment_ext_string; - -ALTER TABLE m_assignment_ext_date MODIFY anyContainer_owner_id INTEGER; -ALTER TABLE m_assignment_ext_long MODIFY anyContainer_owner_id INTEGER; -ALTER TABLE m_assignment_ext_poly MODIFY anyContainer_owner_id INTEGER; -ALTER TABLE m_assignment_ext_reference MODIFY anyContainer_owner_id INTEGER; -ALTER TABLE m_assignment_ext_string MODIFY anyContainer_owner_id INTEGER; -ALTER TABLE m_assignment_extension MODIFY owner_id INTEGER; - -ALTER TABLE m_assignment_ext_date - ADD CONSTRAINT fk_assignment_ext_date - FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) - REFERENCES m_assignment_extension (owner_id, owner_owner_oid); - -ALTER TABLE m_assignment_ext_long - ADD CONSTRAINT fk_assignment_ext_long - FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) - REFERENCES m_assignment_extension (owner_id, owner_owner_oid); - -ALTER TABLE m_assignment_ext_poly - ADD CONSTRAINT fk_assignment_ext_poly - FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) - REFERENCES m_assignment_extension (owner_id, owner_owner_oid); - -ALTER TABLE m_assignment_ext_reference - ADD CONSTRAINT fk_assignment_ext_reference - FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) - REFERENCES m_assignment_extension (owner_id, owner_owner_oid); - -ALTER TABLE m_assignment_ext_string - ADD CONSTRAINT fk_assignment_ext_string - FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) - REFERENCES m_assignment_extension (owner_id, owner_owner_oid); - -ALTER TABLE m_exclusion MODIFY id INTEGER; -ALTER TABLE m_trigger MODIFY id INTEGER; - -CREATE TABLE m_assignment_ext_boolean ( - eName VARCHAR(157) NOT NULL, - anyContainer_owner_id INTEGER NOT NULL, - anyContainer_owner_owner_oid VARCHAR(36) NOT NULL, - booleanValue BIT NOT NULL, - extensionType INTEGER, - dynamicDef BIT, - eType VARCHAR(157), - valueType INTEGER, - PRIMARY KEY (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, booleanValue) -) - DEFAULT CHARACTER SET utf8 - COLLATE utf8_bin - ENGINE = InnoDB; - -ALTER TABLE m_assignment_extension ADD booleansCount SMALLINT; - -ALTER TABLE m_object ADD booleansCount SMALLINT; - -CREATE TABLE m_object_ext_boolean ( - eName VARCHAR(157) NOT NULL, - owner_oid VARCHAR(36) NOT NULL, - ownerType INTEGER NOT NULL, - booleanValue BIT NOT NULL, - dynamicDef BIT, - eType VARCHAR(157), - valueType INTEGER, - PRIMARY KEY (eName, owner_oid, ownerType, booleanValue) -) - DEFAULT CHARACTER SET utf8 - COLLATE utf8_bin - ENGINE = InnoDB; - -CREATE INDEX iAExtensionBoolean ON m_assignment_ext_boolean (extensionType, eName, booleanValue); - -CREATE INDEX iExtensionBoolean ON m_object_ext_boolean (ownerType, eName, booleanValue); - -CREATE INDEX iExtensionBooleanDef ON m_object_ext_boolean (owner_oid, ownerType); - -ALTER TABLE m_assignment_ext_boolean -ADD CONSTRAINT fk_assignment_ext_boolean -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension (owner_id, owner_owner_oid); - -ALTER TABLE m_object_ext_boolean -ADD CONSTRAINT fk_object_ext_boolean -FOREIGN KEY (owner_oid) -REFERENCES m_object (oid); diff --git a/config/sql/_all/mysql-upgrade-3.1.1-3.2.sql b/config/sql/_all/mysql-upgrade-3.1.1-3.2.sql new file mode 100644 index 00000000000..022e1dfdbd1 --- /dev/null +++ b/config/sql/_all/mysql-upgrade-3.1.1-3.2.sql @@ -0,0 +1,38 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +) + DEFAULT CHARACTER SET utf8 + COLLATE utf8_bin + ENGINE=InnoDB; + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR(157), + definitionRef_targetOid VARCHAR(36), + definitionRef_type INTEGER, + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +) + DEFAULT CHARACTER SET utf8 + COLLATE utf8_bin + ENGINE=InnoDB; + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object (oid); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object (oid); diff --git a/config/sql/_all/oracle-3.1.1-all.sql b/config/sql/_all/oracle-3.2-all.sql similarity index 98% rename from config/sql/_all/oracle-3.1.1-all.sql rename to config/sql/_all/oracle-3.2-all.sql index 7d4a9025893..7caad2aca07 100644 --- a/config/sql/_all/oracle-3.1.1-all.sql +++ b/config/sql/_all/oracle-3.2-all.sql @@ -1,6 +1,23 @@ -- INITRANS added because we use serializable transactions http://docs.oracle.com/cd/B14117_01/appdev.101/b10795/adfns_sq.htm#1025374 -- replace ");" with ") INITRANS 30;" +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR2(255 CHAR), + name_orig VARCHAR2(255 CHAR), + oid VARCHAR2(36 CHAR) NOT NULL, + PRIMARY KEY (oid) +) INITRANS 30; + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR2(157 CHAR), + definitionRef_targetOid VARCHAR2(36 CHAR), + definitionRef_type NUMBER(10,0), + name_norm VARCHAR2(255 CHAR), + name_orig VARCHAR2(255 CHAR), + oid VARCHAR2(36 CHAR) NOT NULL, + PRIMARY KEY (oid) +) INITRANS 30; + CREATE TABLE m_abstract_role ( approvalProcess VARCHAR2(255 CHAR), requestable NUMBER(1, 0), @@ -594,6 +611,12 @@ CREATE TABLE m_value_policy ( PRIMARY KEY (oid) ) INITRANS 30; +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm) INITRANS 30; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm) INITRANS 30; + CREATE INDEX iRequestable ON m_abstract_role (requestable) INITRANS 30; CREATE INDEX iAssignmentAdministrative ON m_assignment (administrativeStatus) INITRANS 30; @@ -722,6 +745,16 @@ CREATE INDEX iLocality ON m_user (locality_orig) INITRANS 30; ALTER TABLE m_value_policy ADD CONSTRAINT uc_value_policy_name UNIQUE (name_norm) INITRANS 30; +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; + ALTER TABLE m_abstract_role ADD CONSTRAINT fk_abstract_role FOREIGN KEY (oid) diff --git a/config/sql/_all/oracle-upgrade-3.1-3.1.1.sql b/config/sql/_all/oracle-upgrade-3.1-3.1.1.sql deleted file mode 100644 index aeac113cb2e..00000000000 --- a/config/sql/_all/oracle-upgrade-3.1-3.1.1.sql +++ /dev/null @@ -1,98 +0,0 @@ -CREATE TABLE m_lookup_table ( - name_norm VARCHAR2(255 CHAR), - name_orig VARCHAR2(255 CHAR), - oid VARCHAR2(36 CHAR) NOT NULL, - PRIMARY KEY (oid) -) INITRANS 30; - -CREATE TABLE m_lookup_table_row ( - id NUMBER(10, 0) NOT NULL, - owner_oid VARCHAR2(36 CHAR) NOT NULL, - row_key VARCHAR2(255 CHAR), - label_norm VARCHAR2(255 CHAR), - label_orig VARCHAR2(255 CHAR), - lastChangeTimestamp TIMESTAMP, - row_value VARCHAR2(255 CHAR), - PRIMARY KEY (id, owner_oid) -) INITRANS 30; - -ALTER TABLE m_lookup_table -ADD CONSTRAINT uc_lookup_name UNIQUE (name_norm) INITRANS 30; - -ALTER TABLE m_lookup_table -ADD CONSTRAINT fk_lookup_table -FOREIGN KEY (oid) -REFERENCES m_object; - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT uc_row_key unique (row_key) INITRANS 30; - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT fk_lookup_table_owner -FOREIGN KEY (owner_oid) -REFERENCES m_lookup_table; - -ALTER TABLE m_assignment_reference -DROP PRIMARY KEY; -ALTER TABLE m_assignment_reference -ADD PRIMARY KEY (owner_id, owner_owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_reference -DROP PRIMARY KEY; -ALTER TABLE m_reference -ADD PRIMARY KEY (owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_assignment MODIFY (id NUMBER(10, 0)); -ALTER TABLE m_assignment MODIFY (extId NUMBER(10, 0)); -ALTER TABLE m_assignment_ext_date MODIFY (anyContainer_owner_id NUMBER(10, 0)); -ALTER TABLE m_assignment_ext_long MODIFY (anyContainer_owner_id NUMBER(10, 0)); -ALTER TABLE m_assignment_ext_poly MODIFY (anyContainer_owner_id NUMBER(10, 0)); -ALTER TABLE m_assignment_ext_reference MODIFY (anyContainer_owner_id NUMBER(10, 0)); -ALTER TABLE m_assignment_ext_string MODIFY (anyContainer_owner_id NUMBER(10, 0)); -ALTER TABLE m_assignment_extension MODIFY (owner_id NUMBER(10, 0)); -ALTER TABLE m_assignment_reference MODIFY (owner_id NUMBER(10, 0)); -ALTER TABLE m_exclusion MODIFY (id NUMBER(10, 0)); -ALTER TABLE m_trigger MODIFY (id NUMBER(10, 0)); - -CREATE TABLE m_assignment_ext_boolean ( - eName VARCHAR2(157 CHAR) NOT NULL, - anyContainer_owner_id NUMBER(10, 0) NOT NULL, - anyContainer_owner_owner_oid VARCHAR2(36 CHAR) NOT NULL, - booleanValue NUMBER(1, 0) NOT NULL, - extensionType NUMBER(10, 0), - dynamicDef NUMBER(1, 0), - eType VARCHAR2(157 CHAR), - valueType NUMBER(10, 0), - PRIMARY KEY (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, booleanValue) -) INITRANS 30; - -ALTER TABLE m_assignment_extension ADD booleansCount NUMBER(5, 0); - -ALTER TABLE m_object ADD booleansCount NUMBER(5, 0); - -CREATE TABLE m_object_ext_boolean ( - eName VARCHAR2(157 CHAR) NOT NULL, - owner_oid VARCHAR2(36 CHAR) NOT NULL, - ownerType NUMBER(10, 0) NOT NULL, - booleanValue NUMBER(1, 0) NOT NULL, - dynamicDef NUMBER(1, 0), - eType VARCHAR2(157 CHAR), - valueType NUMBER(10, 0), - PRIMARY KEY (eName, owner_oid, ownerType, booleanValue) -) INITRANS 30; - -CREATE INDEX iAExtensionBoolean ON m_assignment_ext_boolean (extensionType, eName, booleanValue) INITRANS 30; - -CREATE INDEX iExtensionBoolean ON m_object_ext_boolean (ownerType, eName, booleanValue) INITRANS 30; - -CREATE INDEX iExtensionBooleanDef ON m_object_ext_boolean (owner_oid, ownerType) INITRANS 30; - -ALTER TABLE m_assignment_ext_boolean -ADD CONSTRAINT fk_assignment_ext_boolean -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -ALTER TABLE m_object_ext_boolean -ADD CONSTRAINT fk_object_ext_boolean -FOREIGN KEY (owner_oid) -REFERENCES m_object; diff --git a/config/sql/_all/oracle-upgrade-3.1.1-3.2.sql b/config/sql/_all/oracle-upgrade-3.1.1-3.2.sql new file mode 100644 index 00000000000..39369323d90 --- /dev/null +++ b/config/sql/_all/oracle-upgrade-3.1.1-3.2.sql @@ -0,0 +1,32 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR2(255 CHAR), + name_orig VARCHAR2(255 CHAR), + oid VARCHAR2(36 CHAR) NOT NULL, + PRIMARY KEY (oid) +) INITRANS 30; + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR2(157 CHAR), + definitionRef_targetOid VARCHAR2(36 CHAR), + definitionRef_type NUMBER(10,0), + name_norm VARCHAR2(255 CHAR), + name_orig VARCHAR2(255 CHAR), + oid VARCHAR2(36 CHAR) NOT NULL, + PRIMARY KEY (oid) +) INITRANS 30; + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm) INITRANS 30; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm) INITRANS 30; + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; diff --git a/config/sql/_all/postgresql-3.1.1-all.sql b/config/sql/_all/postgresql-3.2-all.sql similarity index 98% rename from config/sql/_all/postgresql-3.1.1-all.sql rename to config/sql/_all/postgresql-3.2-all.sql index ec85de71be8..75f9502c534 100644 --- a/config/sql/_all/postgresql-3.1.1-all.sql +++ b/config/sql/_all/postgresql-3.2-all.sql @@ -1,3 +1,20 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR(157), + definitionRef_targetOid VARCHAR(36), + definitionRef_type int4, + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + CREATE TABLE m_abstract_role ( approvalProcess VARCHAR(255), requestable BOOLEAN, @@ -584,6 +601,12 @@ CREATE TABLE m_value_policy ( PRIMARY KEY (oid) ); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + CREATE INDEX iRequestable ON m_abstract_role (requestable); CREATE INDEX iAssignmentAdministrative ON m_assignment (administrativeStatus); @@ -712,6 +735,16 @@ CREATE INDEX iLocality ON m_user (locality_orig); ALTER TABLE m_value_policy ADD CONSTRAINT uc_value_policy_name UNIQUE (name_norm); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; + ALTER TABLE m_abstract_role ADD CONSTRAINT fk_abstract_role FOREIGN KEY (oid) diff --git a/config/sql/_all/postgresql-upgrade-3.1-3.1.1.sql b/config/sql/_all/postgresql-upgrade-3.1-3.1.1.sql deleted file mode 100644 index 70abf6a955b..00000000000 --- a/config/sql/_all/postgresql-upgrade-3.1-3.1.1.sql +++ /dev/null @@ -1,96 +0,0 @@ -CREATE TABLE m_lookup_table ( - name_norm VARCHAR(255), - name_orig VARCHAR(255), - oid VARCHAR(36) NOT NULL, - PRIMARY KEY (oid) -); - -CREATE TABLE m_lookup_table_row ( - id INT4 NOT NULL, - owner_oid VARCHAR(36) NOT NULL, - row_key VARCHAR(255), - label_norm VARCHAR(255), - label_orig VARCHAR(255), - lastChangeTimestamp TIMESTAMP, - row_value VARCHAR(255), - PRIMARY KEY (id, owner_oid) -); - -ALTER TABLE m_lookup_table -ADD CONSTRAINT uc_lookup_name UNIQUE (name_norm); - -ALTER TABLE m_lookup_table -ADD CONSTRAINT fk_lookup_table -FOREIGN KEY (oid) -REFERENCES m_object; - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT fk_lookup_table_owner -FOREIGN KEY (owner_oid) -REFERENCES m_lookup_table; - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT uc_row_key UNIQUE (row_key); - -ALTER TABLE m_assignment_reference -DROP CONSTRAINT m_assignment_reference_pkey, -ADD CONSTRAINT m_assignment_reference_pkey PRIMARY KEY (owner_id, owner_owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_reference -DROP CONSTRAINT m_reference_pkey, -ADD CONSTRAINT m_reference_pkey PRIMARY KEY (owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_assignment ALTER COLUMN id TYPE INT4; -ALTER TABLE m_assignment ALTER COLUMN extId TYPE INT4; -ALTER TABLE m_assignment_ext_date ALTER COLUMN anyContainer_owner_id TYPE INT4; -ALTER TABLE m_assignment_ext_long ALTER COLUMN anyContainer_owner_id TYPE INT4; -ALTER TABLE m_assignment_ext_poly ALTER COLUMN anyContainer_owner_id TYPE INT4; -ALTER TABLE m_assignment_ext_reference ALTER COLUMN anyContainer_owner_id TYPE INT4; -ALTER TABLE m_assignment_ext_string ALTER COLUMN anyContainer_owner_id TYPE INT4; -ALTER TABLE m_assignment_extension ALTER COLUMN owner_id TYPE INT4; -ALTER TABLE m_assignment_reference ALTER COLUMN owner_id TYPE INT4; -ALTER TABLE m_exclusion ALTER COLUMN id TYPE INT4; -ALTER TABLE m_trigger ALTER COLUMN id TYPE INT4; - -CREATE TABLE m_assignment_ext_boolean ( - eName VARCHAR(157) NOT NULL, - anyContainer_owner_id INT4 NOT NULL, - anyContainer_owner_owner_oid VARCHAR(36) NOT NULL, - booleanValue BOOLEAN NOT NULL, - extensionType INT4, - dynamicDef BOOLEAN, - eType VARCHAR(157), - valueType INT4, - PRIMARY KEY (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, booleanValue) -); - -ALTER TABLE m_assignment_extension ADD booleansCount INT2; - -ALTER TABLE m_object ADD booleansCount INT2; - -CREATE TABLE m_object_ext_boolean ( - eName VARCHAR(157) NOT NULL, - owner_oid VARCHAR(36) NOT NULL, - ownerType INT4 NOT NULL, - booleanValue BOOLEAN NOT NULL, - dynamicDef BOOLEAN, - eType VARCHAR(157), - valueType INT4, - PRIMARY KEY (eName, owner_oid, ownerType, booleanValue) -); - -CREATE INDEX iAExtensionBoolean ON m_assignment_ext_boolean (extensionType, eName, booleanValue); - -CREATE INDEX iExtensionBoolean ON m_object_ext_boolean (ownerType, eName, booleanValue); - -CREATE INDEX iExtensionBooleanDef ON m_object_ext_boolean (owner_oid, ownerType); - -ALTER TABLE m_assignment_ext_boolean -ADD CONSTRAINT fk_assignment_ext_boolean -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -ALTER TABLE m_object_ext_boolean -ADD CONSTRAINT fk_object_ext_boolean -FOREIGN KEY (owner_oid) -REFERENCES m_object; diff --git a/config/sql/_all/postgresql-upgrade-3.1.1-3.2.sql b/config/sql/_all/postgresql-upgrade-3.1.1-3.2.sql new file mode 100644 index 00000000000..972160cb578 --- /dev/null +++ b/config/sql/_all/postgresql-upgrade-3.1.1-3.2.sql @@ -0,0 +1,32 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation VARCHAR(157), + definitionRef_targetOid VARCHAR(36), + definitionRef_type int4, + name_norm VARCHAR(255), + name_orig VARCHAR(255), + oid VARCHAR(36) NOT NULL, + PRIMARY KEY (oid) +); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; diff --git a/config/sql/_all/sqlserver-3.1.1-all.sql b/config/sql/_all/sqlserver-3.2-all.sql similarity index 98% rename from config/sql/_all/sqlserver-3.1.1-all.sql rename to config/sql/_all/sqlserver-3.2-all.sql index 739693c0484..216a3af5933 100644 --- a/config/sql/_all/sqlserver-3.1.1-all.sql +++ b/config/sql/_all/sqlserver-3.2-all.sql @@ -1,3 +1,20 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm NVARCHAR(255) COLLATE database_default, + name_orig NVARCHAR(255) COLLATE database_default, + oid NVARCHAR(36) COLLATE database_default NOT NULL, + PRIMARY KEY (oid) +); + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation NVARCHAR(157) COLLATE database_default, + definitionRef_targetOid NVARCHAR(36) COLLATE database_default, + definitionRef_type INT, + name_norm NVARCHAR(255) COLLATE database_default, + name_orig NVARCHAR(255) COLLATE database_default, + oid NVARCHAR(36) COLLATE database_default NOT NULL, + PRIMARY KEY (oid) +); + CREATE TABLE m_abstract_role ( approvalProcess NVARCHAR(255) COLLATE database_default, requestable BIT, @@ -584,6 +601,12 @@ CREATE TABLE m_value_policy ( PRIMARY KEY (oid) ); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + CREATE INDEX iRequestable ON m_abstract_role (requestable); CREATE INDEX iAssignmentAdministrative ON m_assignment (administrativeStatus); @@ -712,6 +735,16 @@ CREATE INDEX iLocality ON m_user (locality_orig); ALTER TABLE m_value_policy ADD CONSTRAINT uc_value_policy_name UNIQUE (name_norm); +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; + ALTER TABLE m_abstract_role ADD CONSTRAINT fk_abstract_role FOREIGN KEY (oid) diff --git a/config/sql/_all/sqlserver-upgrade-3.1-3.1.1.sql b/config/sql/_all/sqlserver-upgrade-3.1-3.1.1.sql deleted file mode 100644 index f16e30e2589..00000000000 --- a/config/sql/_all/sqlserver-upgrade-3.1-3.1.1.sql +++ /dev/null @@ -1,208 +0,0 @@ -CREATE TABLE m_lookup_table ( - name_norm NVARCHAR(255) COLLATE database_default, - name_orig NVARCHAR(255) COLLATE database_default, - oid NVARCHAR(36) COLLATE database_default NOT NULL, - PRIMARY KEY (oid) -); - -CREATE TABLE m_lookup_table_row ( - id INT NOT NULL, - owner_oid NVARCHAR(36) COLLATE database_default NOT NULL, - row_key NVARCHAR(255) COLLATE database_default, - label_norm NVARCHAR(255) COLLATE database_default, - label_orig NVARCHAR(255) COLLATE database_default, - lastChangeTimestamp DATETIME2, - row_value NVARCHAR(255) COLLATE database_default, - PRIMARY KEY (id, owner_oid) -); - -ALTER TABLE m_lookup_table -ADD CONSTRAINT uc_lookup_name UNIQUE (name_norm); - -ALTER TABLE m_lookup_table -ADD CONSTRAINT fk_lookup_table -FOREIGN KEY (oid) -REFERENCES m_object; - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT uc_row_key UNIQUE (row_key); - -ALTER TABLE m_lookup_table_row -ADD CONSTRAINT fk_lookup_table_owner -FOREIGN KEY (owner_oid) -REFERENCES m_lookup_table; - -declare @pkname varchar(255); -set @pkname = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_reference'); -execute ('ALTER TABLE m_assignment_reference DROP CONSTRAINT ' + @pkname); - -ALTER TABLE m_assignment_reference DROP CONSTRAINT fk_assignment_reference; - -set @pkname = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_reference'); -execute ('ALTER TABLE m_reference DROP CONSTRAINT ' + @pkname); - -declare @n1 varchar(255); -set @n1 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment'); -execute ('ALTER TABLE m_assignment DROP CONSTRAINT ' + @n1); - -declare @n2 varchar(255); -set @n2 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_ext_date'); -execute ('ALTER TABLE m_assignment_ext_date DROP CONSTRAINT ' + @n2); - -ALTER TABLE m_assignment_ext_date DROP CONSTRAINT fk_assignment_ext_date; - -declare @n3 varchar(255); -set @n3 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_ext_long'); -execute ('ALTER TABLE m_assignment_ext_long DROP CONSTRAINT ' + @n3); - -ALTER TABLE m_assignment_ext_long DROP CONSTRAINT fk_assignment_ext_long; - -declare @n4 varchar(255); -set @n4 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_ext_poly'); -execute ('ALTER TABLE m_assignment_ext_poly DROP CONSTRAINT ' + @n4); - -ALTER TABLE m_assignment_ext_poly DROP CONSTRAINT fk_assignment_ext_poly; - -declare @n5 varchar(255); -set @n5 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_ext_reference'); -execute ('ALTER TABLE m_assignment_ext_reference DROP CONSTRAINT ' + @n5); - -ALTER TABLE m_assignment_ext_reference DROP CONSTRAINT fk_assignment_ext_reference; - -declare @n6 varchar(255); -set @n6 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_ext_string'); -execute ('ALTER TABLE m_assignment_ext_string DROP CONSTRAINT ' + @n6); - -ALTER TABLE m_assignment_ext_string DROP CONSTRAINT fk_assignment_ext_string; - -declare @n7 varchar(255); -set @n7 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_assignment_extension'); -execute ('ALTER TABLE m_assignment_extension DROP CONSTRAINT ' + @n7); - -declare @n8 varchar(255); -set @n8 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_exclusion'); -execute ('ALTER TABLE m_exclusion DROP CONSTRAINT ' + @n8); - -declare @n9 varchar(255); -set @n9 = (SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'm_trigger'); -execute ('ALTER TABLE m_trigger DROP CONSTRAINT ' + @n9); - -ALTER TABLE m_assignment ALTER COLUMN id INT NOT NULL; -ALTER TABLE m_assignment ALTER COLUMN extId INT; -ALTER TABLE m_assignment_ext_date ALTER COLUMN anyContainer_owner_id INT NOT NULL; -ALTER TABLE m_assignment_ext_long ALTER COLUMN anyContainer_owner_id INT NOT NULL; -ALTER TABLE m_assignment_ext_poly ALTER COLUMN anyContainer_owner_id INT NOT NULL; -ALTER TABLE m_assignment_ext_reference ALTER COLUMN anyContainer_owner_id INT NOT NULL; -ALTER TABLE m_assignment_ext_string ALTER COLUMN anyContainer_owner_id INT NOT NULL; -ALTER TABLE m_assignment_extension ALTER COLUMN owner_id INT NOT NULL; -ALTER TABLE m_assignment_reference ALTER COLUMN owner_id INT NOT NULL; -ALTER TABLE m_exclusion ALTER COLUMN id INT NOT NULL; -ALTER TABLE m_trigger ALTER COLUMN id INT NOT NULL; - -alter table m_assignment -add constraint PK_m_assignment primary key clustered (id, owner_oid); - -alter table m_assignment_reference -add constraint PK_m_a_reference primary key clustered (owner_id, owner_owner_oid, reference_type, relation, targetOid); - -ALTER TABLE m_assignment_reference -ADD CONSTRAINT fk_assignment_reference -FOREIGN KEY (owner_id, owner_owner_oid) -REFERENCES m_assignment; - -alter table m_reference -add constraint PK_m_reference primary key clustered (owner_oid, reference_type, relation, targetOid); - -alter table m_assignment_extension -add constraint PK_m_assignment_extension primary key clustered (owner_id, owner_owner_oid); - -ALTER TABLE m_assignment_ext_date -ADD CONSTRAINT fk_assignment_ext_date -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -alter table m_assignment_ext_date -add constraint PK_m_assignment_ext_date primary key clustered (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, dateValue); - -ALTER TABLE m_assignment_ext_long -ADD CONSTRAINT fk_assignment_ext_long -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -alter table m_assignment_ext_long -add constraint PK_m_assignment_ext_long primary key clustered (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, longValue); - -ALTER TABLE m_assignment_ext_poly -ADD CONSTRAINT fk_assignment_ext_poly -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -alter table m_assignment_ext_poly -add constraint PK_m_assignment_ext_poly primary key clustered (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, orig); - -ALTER TABLE m_assignment_ext_reference -ADD CONSTRAINT fk_assignment_ext_reference -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -alter table m_assignment_ext_reference -add constraint PK_m_assignment_ext_reference primary key clustered (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, targetoid); - -ALTER TABLE m_assignment_ext_string -ADD CONSTRAINT fk_assignment_ext_string -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -alter table m_assignment_ext_string -add constraint PK_m_assignment_ext_string primary key clustered (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, stringValue); - -alter table m_exclusion -add constraint PK_m_exclusion primary key clustered (id, owner_oid); - -alter table m_trigger -add constraint PK_m_trigger primary key clustered (id, owner_oid); - -CREATE TABLE m_assignment_ext_boolean ( - eName NVARCHAR(157) COLLATE database_default NOT NULL, - anyContainer_owner_id INT NOT NULL, - anyContainer_owner_owner_oid NVARCHAR(36) COLLATE database_default NOT NULL, - booleanValue BIT NOT NULL, - extensionType INT, - dynamicDef BIT, - eType NVARCHAR(157) COLLATE database_default, - valueType INT, - PRIMARY KEY (eName, anyContainer_owner_id, anyContainer_owner_owner_oid, booleanValue) -); - -ALTER TABLE m_assignment_extension ADD booleansCount SMALLINT; - -ALTER TABLE m_object ADD booleansCount SMALLINT; - -CREATE TABLE m_object_ext_boolean ( - eName NVARCHAR(157) COLLATE database_default NOT NULL, - owner_oid NVARCHAR(36) COLLATE database_default NOT NULL, - ownerType INT NOT NULL, - booleanValue BIT NOT NULL, - dynamicDef BIT, - eType NVARCHAR(157) COLLATE database_default, - valueType INT, - PRIMARY KEY (eName, owner_oid, ownerType, booleanValue) -); - -CREATE INDEX iAExtensionBoolean ON m_assignment_ext_boolean (extensionType, eName, booleanValue); - -CREATE INDEX iExtensionBoolean ON m_object_ext_boolean (ownerType, eName, booleanValue); - -CREATE INDEX iExtensionBooleanDef ON m_object_ext_boolean (owner_oid, ownerType); - -ALTER TABLE m_assignment_ext_boolean -ADD CONSTRAINT fk_assignment_ext_boolean -FOREIGN KEY (anyContainer_owner_id, anyContainer_owner_owner_oid) -REFERENCES m_assignment_extension; - -ALTER TABLE m_object_ext_boolean -ADD CONSTRAINT fk_object_ext_boolean -FOREIGN KEY (owner_oid) -REFERENCES m_object; - -go diff --git a/config/sql/_all/sqlserver-upgrade-3.1.1-3.2.sql b/config/sql/_all/sqlserver-upgrade-3.1.1-3.2.sql new file mode 100644 index 00000000000..c06e16e1dde --- /dev/null +++ b/config/sql/_all/sqlserver-upgrade-3.1.1-3.2.sql @@ -0,0 +1,32 @@ +CREATE TABLE m1_a6_c13_definition ( + name_norm NVARCHAR(255) COLLATE database_default, + name_orig NVARCHAR(255) COLLATE database_default, + oid NVARCHAR(36) COLLATE database_default NOT NULL, + PRIMARY KEY (oid) +); + +CREATE TABLE m1_a6_certification_campaign ( + definitionRef_relation NVARCHAR(157) COLLATE database_default, + definitionRef_targetOid NVARCHAR(36) COLLATE database_default, + definitionRef_type INT, + name_norm NVARCHAR(255) COLLATE database_default, + name_orig NVARCHAR(255) COLLATE database_default, + oid NVARCHAR(36) COLLATE database_default NOT NULL, + PRIMARY KEY (oid) +); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT uc_a6_c13_definition_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT uc_a6_c13_campaign_name UNIQUE (name_norm); + +ALTER TABLE m1_a6_c13_definition + ADD CONSTRAINT fk_a6_c13_definition + FOREIGN KEY (oid) + REFERENCES m_object; + +ALTER TABLE m1_a6_certification_campaign + ADD CONSTRAINT fk_a6_c13_campaign + FOREIGN KEY (oid) + REFERENCES m_object; diff --git a/repo/repo-sql-impl-test/sql-procedures/mysql.sql b/repo/repo-sql-impl-test/sql-procedures/mysql.sql index dc0f2f38757..82e1a556e99 100644 --- a/repo/repo-sql-impl-test/sql-procedures/mysql.sql +++ b/repo/repo-sql-impl-test/sql-procedures/mysql.sql @@ -8,6 +8,8 @@ DETERMINISTIC BEGIN DECLARE run TINYINT DEFAULT 0; + DELETE FROM m1_a6_certification_campaign; + DELETE FROM m1_a6_c13_definition; DELETE FROM m_audit_delta; DELETE FROM m_audit_event; DELETE FROM m_object_ext_date; diff --git a/repo/repo-sql-impl-test/sql-procedures/postgresql.sql b/repo/repo-sql-impl-test/sql-procedures/postgresql.sql index 58b3ed7efbc..b26f7e7693e 100644 --- a/repo/repo-sql-impl-test/sql-procedures/postgresql.sql +++ b/repo/repo-sql-impl-test/sql-procedures/postgresql.sql @@ -1,6 +1,8 @@ CREATE OR REPLACE FUNCTION cleanupTestDatabase() RETURNS INTEGER AS $$ BEGIN + TRUNCATE TABLE m1_a6_certification_campaign IDENTITY CASCADE; + TRUNCATE TABLE m1_a6_c13_definition IDENTITY CASCADE; TRUNCATE TABLE m_audit_delta RESTART IDENTITY CASCADE; TRUNCATE TABLE m_audit_event RESTART IDENTITY CASCADE; TRUNCATE TABLE m_object_ext_date RESTART IDENTITY CASCADE; diff --git a/repo/repo-sql-impl-test/sql-procedures/sqlserver.sql b/repo/repo-sql-impl-test/sql-procedures/sqlserver.sql index 488e04c9691..5563a181422 100644 --- a/repo/repo-sql-impl-test/sql-procedures/sqlserver.sql +++ b/repo/repo-sql-impl-test/sql-procedures/sqlserver.sql @@ -12,6 +12,8 @@ AS BEGIN SET NOCOUNT ON; + DELETE FROM m1_a6_certification_campaign; + DELETE FROM m1_a6_c13_definition; DELETE FROM m_audit_delta; DELETE FROM m_audit_event; DELETE FROM m_object_ext_date;