Index: Application/Ringtoets/src/Application.Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql =================================================================== diff -u -r4917ba11fefa1ab1d4d84642edcc1b1b958e479e -rec2b6db721e7e9ae0bf421d53556834253cb24c0 --- Application/Ringtoets/src/Application.Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql (.../DatabaseStructure18.1.sql) (revision 4917ba11fefa1ab1d4d84642edcc1b1b958e479e) +++ Application/Ringtoets/src/Application.Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql (.../DatabaseStructure18.1.sql) (revision ec2b6db721e7e9ae0bf421d53556834253cb24c0) @@ -1,6 +1,6 @@ /* ---------------------------------------------------- */ /* Generated by Enterprise Architect Version 12.0 */ -/* Created On : 09-May-2018 15:05:35 */ +/* Created On : 30-May-2018 10:34:37 */ /* DBMS : SQLite */ /* ---------------------------------------------------- */ @@ -297,6 +297,12 @@ DROP TABLE IF EXISTS 'HydraulicLocationCalculationCollectionEntity' ; +DROP TABLE IF EXISTS 'DuneLocationCalculationCollectionEntity' +; + +DROP TABLE IF EXISTS 'DuneLocationCalculationEntity' +; + /* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */ CREATE TABLE 'VersionEntity' @@ -630,7 +636,17 @@ ( 'DuneErosionFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, 'FailureMechanismEntityId' INTEGER NOT NULL, + 'DuneLocationCalculationCollectionEntity1Id' INTEGER NOT NULL, -- Represents the calculations for the failure mechanism specific factorized signaling norm + 'DuneLocationCalculationCollectionEntity2Id' INTEGER NOT NULL, -- Represents the calculations for the failure mechanism specific signaling norm + 'DuneLocationCalculationCollectionEntity3Id' INTEGER NOT NULL, -- Represents the calculations for the failure mechanism specific lower limit norm + 'DuneLocationCalculationCollectionEntity4Id' INTEGER NOT NULL, -- Represents the calculations for the lower limit norm + 'DuneLocationCalculationCollectionEntity5Id' INTEGER NOT NULL, -- Represents the calculations for the factorized lower limit norm 'N' REAL NOT NULL, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity1' FOREIGN KEY ('DuneLocationCalculationCollectionEntity1Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity2' FOREIGN KEY ('DuneLocationCalculationCollectionEntity2Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity3' FOREIGN KEY ('DuneLocationCalculationCollectionEntity3Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity4' FOREIGN KEY ('DuneLocationCalculationCollectionEntity4Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity5' FOREIGN KEY ('DuneLocationCalculationCollectionEntity5Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade ) ; @@ -1535,7 +1551,7 @@ CREATE TABLE 'DuneLocationOutputEntity' ( 'DuneLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, - 'DuneLocationEntityId' INTEGER NOT NULL, + 'DuneLocationCalculationEntityId' INTEGER NOT NULL, 'WaterLevel' REAL, 'WaveHeight' REAL, 'WavePeriod' REAL, @@ -1544,7 +1560,7 @@ 'CalculatedProbability' REAL, 'CalculatedReliability' REAL, 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged - CONSTRAINT 'FK_DuneLocationOutputEntity_DuneLocationEntity' FOREIGN KEY ('DuneLocationEntityId') REFERENCES 'DuneLocationEntity' ('DuneLocationEntityId') ON DELETE Cascade ON UPDATE Cascade + CONSTRAINT 'FK_DuneLocationOutputEntity_DuneLocationCalculationEntity' FOREIGN KEY ('DuneLocationCalculationEntityId') REFERENCES 'DuneLocationCalculationEntity' ('DuneLocationCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade ) ; @@ -1997,6 +2013,22 @@ ) ; +CREATE TABLE 'DuneLocationCalculationCollectionEntity' +( + 'DuneLocationCalculationCollectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT +) +; + +CREATE TABLE 'DuneLocationCalculationEntity' +( + 'DuneLocationCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, + 'DuneLocationEntityId' INTEGER, + 'DuneLocationCalculationCollectionEntityId' INTEGER, + CONSTRAINT 'FK_DuneLocationCalculationEntity_DuneLocationCalculationCollectionEntity' FOREIGN KEY ('DuneLocationCalculationCollectionEntityId') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE Cascade ON UPDATE Cascade, + CONSTRAINT 'FK_DuneLocationCalculationEntity_DuneLocationEntity' FOREIGN KEY ('DuneLocationEntityId') REFERENCES 'DuneLocationEntity' ('DuneLocationEntityId') ON DELETE Cascade ON UPDATE Cascade +) +; + /* Create Indexes and Triggers */ CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' @@ -2163,9 +2195,43 @@ ON 'GrassCoverErosionInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC) ; +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity1' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity1Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity2' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity2Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity3' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity3Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity4' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity4Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity5' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity5Id' ASC) +; + CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' ON 'DuneErosionFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC) ; +CREATE TRIGGER [TR_AfterDeleteDuneErosionFailureMechanismMetaEntity_RemoveDuneLocationCalculationCollectionEntities] + AFTER DELETE + ON DuneErosionFailureMechanismMetaEntity + FOR EACH ROW +BEGIN + DELETE + FROM DuneLocationCalculationCollectionEntity + WHERE DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity1Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity2Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity3Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity4Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity5Id; +END; +; CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC) @@ -2523,8 +2589,8 @@ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC) ; -CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationEntity' - ON 'DuneLocationOutputEntity' ('DuneLocationEntityId' ASC) +CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationCalculationEntity' + ON 'DuneLocationOutputEntity' ('DuneLocationCalculationEntityId' ASC) ; CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity' @@ -2766,3 +2832,11 @@ CREATE INDEX 'IXFK_HydraulicLocationCalculationEntity_HydraulicLocationEntity' ON 'HydraulicLocationCalculationEntity' ('HydraulicLocationEntityId' ASC) ; + +CREATE INDEX 'IXFK_DuneLocationCalculationEntity_DuneLocationCalculationCollectionEntity' + ON 'DuneLocationCalculationEntity' ('DuneLocationCalculationCollectionEntityId' ASC) +; + +CREATE INDEX 'IXFK_DuneLocationCalculationEntity_DuneLocationEntity' + ON 'DuneLocationCalculationEntity' ('DuneLocationEntityId' ASC) +; Index: build/DatabaseStructure.sql =================================================================== diff -u -r4917ba11fefa1ab1d4d84642edcc1b1b958e479e -rec2b6db721e7e9ae0bf421d53556834253cb24c0 --- build/DatabaseStructure.sql (.../DatabaseStructure.sql) (revision 4917ba11fefa1ab1d4d84642edcc1b1b958e479e) +++ build/DatabaseStructure.sql (.../DatabaseStructure.sql) (revision ec2b6db721e7e9ae0bf421d53556834253cb24c0) @@ -1,6 +1,6 @@ /* ---------------------------------------------------- */ /* Generated by Enterprise Architect Version 12.0 */ -/* Created On : 09-May-2018 15:05:35 */ +/* Created On : 30-May-2018 10:34:37 */ /* DBMS : SQLite */ /* ---------------------------------------------------- */ @@ -297,6 +297,12 @@ DROP TABLE IF EXISTS 'HydraulicLocationCalculationCollectionEntity' ; +DROP TABLE IF EXISTS 'DuneLocationCalculationCollectionEntity' +; + +DROP TABLE IF EXISTS 'DuneLocationCalculationEntity' +; + /* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */ CREATE TABLE 'VersionEntity' @@ -630,7 +636,17 @@ ( 'DuneErosionFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, 'FailureMechanismEntityId' INTEGER NOT NULL, + 'DuneLocationCalculationCollectionEntity1Id' INTEGER NOT NULL, -- Represents the calculations for the failure mechanism specific factorized signaling norm + 'DuneLocationCalculationCollectionEntity2Id' INTEGER NOT NULL, -- Represents the calculations for the failure mechanism specific signaling norm + 'DuneLocationCalculationCollectionEntity3Id' INTEGER NOT NULL, -- Represents the calculations for the failure mechanism specific lower limit norm + 'DuneLocationCalculationCollectionEntity4Id' INTEGER NOT NULL, -- Represents the calculations for the lower limit norm + 'DuneLocationCalculationCollectionEntity5Id' INTEGER NOT NULL, -- Represents the calculations for the factorized lower limit norm 'N' REAL NOT NULL, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity1' FOREIGN KEY ('DuneLocationCalculationCollectionEntity1Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity2' FOREIGN KEY ('DuneLocationCalculationCollectionEntity2Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity3' FOREIGN KEY ('DuneLocationCalculationCollectionEntity3Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity4' FOREIGN KEY ('DuneLocationCalculationCollectionEntity4Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, + CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity5' FOREIGN KEY ('DuneLocationCalculationCollectionEntity5Id') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade, CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade ) ; @@ -1535,7 +1551,7 @@ CREATE TABLE 'DuneLocationOutputEntity' ( 'DuneLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, - 'DuneLocationEntityId' INTEGER NOT NULL, + 'DuneLocationCalculationEntityId' INTEGER NOT NULL, 'WaterLevel' REAL, 'WaveHeight' REAL, 'WavePeriod' REAL, @@ -1544,7 +1560,7 @@ 'CalculatedProbability' REAL, 'CalculatedReliability' REAL, 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged - CONSTRAINT 'FK_DuneLocationOutputEntity_DuneLocationEntity' FOREIGN KEY ('DuneLocationEntityId') REFERENCES 'DuneLocationEntity' ('DuneLocationEntityId') ON DELETE Cascade ON UPDATE Cascade + CONSTRAINT 'FK_DuneLocationOutputEntity_DuneLocationCalculationEntity' FOREIGN KEY ('DuneLocationCalculationEntityId') REFERENCES 'DuneLocationCalculationEntity' ('DuneLocationCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade ) ; @@ -1997,6 +2013,22 @@ ) ; +CREATE TABLE 'DuneLocationCalculationCollectionEntity' +( + 'DuneLocationCalculationCollectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT +) +; + +CREATE TABLE 'DuneLocationCalculationEntity' +( + 'DuneLocationCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, + 'DuneLocationEntityId' INTEGER, + 'DuneLocationCalculationCollectionEntityId' INTEGER, + CONSTRAINT 'FK_DuneLocationCalculationEntity_DuneLocationCalculationCollectionEntity' FOREIGN KEY ('DuneLocationCalculationCollectionEntityId') REFERENCES 'DuneLocationCalculationCollectionEntity' ('DuneLocationCalculationCollectionEntityId') ON DELETE Cascade ON UPDATE Cascade, + CONSTRAINT 'FK_DuneLocationCalculationEntity_DuneLocationEntity' FOREIGN KEY ('DuneLocationEntityId') REFERENCES 'DuneLocationEntity' ('DuneLocationEntityId') ON DELETE Cascade ON UPDATE Cascade +) +; + /* Create Indexes and Triggers */ CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' @@ -2163,9 +2195,43 @@ ON 'GrassCoverErosionInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC) ; +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity1' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity1Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity2' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity2Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity3' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity3Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity4' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity4Id' ASC) +; + +CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_DuneLocationCalculationCollectionEntity5' + ON 'DuneErosionFailureMechanismMetaEntity' ('DuneLocationCalculationCollectionEntity5Id' ASC) +; + CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' ON 'DuneErosionFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC) ; +CREATE TRIGGER [TR_AfterDeleteDuneErosionFailureMechanismMetaEntity_RemoveDuneLocationCalculationCollectionEntities] + AFTER DELETE + ON DuneErosionFailureMechanismMetaEntity + FOR EACH ROW +BEGIN + DELETE + FROM DuneLocationCalculationCollectionEntity + WHERE DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity1Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity2Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity3Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity4Id + OR DuneLocationCalculationCollectionEntityId IS OLD.DuneLocationCalculationCollectionEntity5Id; +END; +; CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC) @@ -2523,8 +2589,8 @@ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC) ; -CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationEntity' - ON 'DuneLocationOutputEntity' ('DuneLocationEntityId' ASC) +CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationCalculationEntity' + ON 'DuneLocationOutputEntity' ('DuneLocationCalculationEntityId' ASC) ; CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity' @@ -2766,3 +2832,11 @@ CREATE INDEX 'IXFK_HydraulicLocationCalculationEntity_HydraulicLocationEntity' ON 'HydraulicLocationCalculationEntity' ('HydraulicLocationEntityId' ASC) ; + +CREATE INDEX 'IXFK_DuneLocationCalculationEntity_DuneLocationCalculationCollectionEntity' + ON 'DuneLocationCalculationEntity' ('DuneLocationCalculationCollectionEntityId' ASC) +; + +CREATE INDEX 'IXFK_DuneLocationCalculationEntity_DuneLocationEntity' + ON 'DuneLocationCalculationEntity' ('DuneLocationEntityId' ASC) +;