Index: Ringtoets.sln
===================================================================
diff -u -rae4884737b490380d1a81bd0e584d8525d76deeb -reb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08
--- Ringtoets.sln (.../Ringtoets.sln) (revision ae4884737b490380d1a81bd0e584d8525d76deeb)
+++ Ringtoets.sln (.../Ringtoets.sln) (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -1937,7 +1937,7 @@
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{9BD55D5D-0C33-491D-995F-88FD763AB4C5}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Riskeer.Migration.Core", "Ringtoets\Migration\src\Ringtoets.Migration.Core\Riskeer.Migration.Core.csproj", "{FAC55B92-E259-43D6-B9A1-5BDA6C834359}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Riskeer.Migration.Core", "Ringtoets\Migration\src\Riskeer.Migration.Core\Riskeer.Migration.Core.csproj", "{FAC55B92-E259-43D6-B9A1-5BDA6C834359}"
ProjectSection(ProjectDependencies) = postProject
{C90B77DA-E421-43CC-B82E-529651BC21AC} = {C90B77DA-E421-43CC-B82E-529651BC21AC}
EndProjectSection
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure17.1.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure17.2.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure17.3.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/DatabaseStructure19.1.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_17.1_17.2.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_17.2_17.3.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_18.1_19.1.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_5_17.1.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/MigrationLogDatabaseReader.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/MigrationLogEntityTableDefinitions.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/MigrationLogMessage.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/Properties/AssemblyInfo.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/Properties/Resources.Designer.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/Properties/Resources.resx'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsCreateScript.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsDatabaseFile.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsDatabaseQueryBuilder.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsDatabaseSourceFile.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsSqLiteDatabaseFileMigrator.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsUpgradeScript.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/RingtoetsVersionedFile.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/Riskeer.Migration.Core.csproj'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/VersionTableDefinitions.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08 refers to a dead (removed) revision in file `Ringtoets/Migration/src/Ringtoets.Migration.Core/packages.config'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.1.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.1.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.1.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,1751 @@
+/* ---------------------------------------------------- */
+/* Generated by Enterprise Architect Version 12.0 */
+/* Created On : 12-apr-2017 15:44:34 */
+/* DBMS : SQLite */
+/* ---------------------------------------------------- */
+
+/* Drop Tables */
+
+DROP TABLE IF EXISTS 'VersionEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ProjectEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'AssessmentSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'CalculationGroupEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'SoilLayerEntity'
+;
+
+DROP TABLE IF EXISTS 'SoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StochasticSoilModelEntity'
+;
+
+DROP TABLE IF EXISTS 'SurfaceLineEntity'
+;
+
+DROP TABLE IF EXISTS 'CharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSemiProbabilisticOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'TechnicalInnovationSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaterPressureAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacrostabilityInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacrostabilityOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MicrostabilitySectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DikeProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ForeshoreProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsHydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+;
+
+/* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */
+
+CREATE TABLE 'VersionEntity'
+(
+ 'VersionId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Version' VARCHAR (20) NOT NULL,
+ 'Timestamp' DATETIME NOT NULL,
+ 'FingerPrint' BLOB NOT NULL
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+(
+ 'GrassCoverErosionInwardsDikeHeightOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'DikeHeight' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'ProjectEntity'
+(
+ 'ProjectEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Description' VARCHAR (260)
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresCalculationEntity'
+(
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'StabilityPointStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL NOT NULL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL NOT NULL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'LoadSchematizationType' TINYINT (1) NOT NULL, -- Enum: 1 = Linear, 2 = Quadratic
+ 'VolumicWeightWater' REAL,
+ 'StormDurationMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity' FOREIGN KEY ('StabilityPointStructureEntityId') REFERENCES 'StabilityPointStructureEntity' ('StabilityPointStructureEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'AssessmentSectionEntity'
+(
+ 'AssessmentSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ProjectEntityId' INTEGER NOT NULL,
+ 'Id' TEXT,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'Norm' REAL NOT NULL,
+ 'HydraulicDatabaseVersion' TEXT,
+ 'HydraulicDatabaseLocation' TEXT,
+ 'Composition' TINYINT (1) NOT NULL, -- Enum: 1 = Dike, 2 = Dune, 3 = DikeAndDune
+ 'ReferenceLinePointXml' TEXT,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_AssessmentSectionEntity_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismEntity'
+(
+ 'FailureMechanismEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'CalculationGroupEntityId' INTEGER,
+ 'FailureMechanismType' SMALLINT NOT NULL, -- Enum: 1 = Piping, 2 = Macrostabiliteit binnenwaarts, 3= Golfklappen op asfaltbekleding, 4= Grasbekleding erosie buitentalud, 5 = Grasbekleding afschuiven buitentalud, 6 = Grasbekleding erosie kruin en binnentalud, 7 = Stabiliteit steenzetting, 8 = Duinafslag, 9 = Hoogte kunstwerk, 10 = Betrouwbaarheid sluiten kunstwerk, 11 = Piping bij kunstwerk, 12 = Sterkte en stabiliteit puntconstructires, 13 = Macrostabiliteit buitenwaarts, 14 = Microstabiliteit, 15 = Wateroverdruk bij asfaltbekleding, 16 = Grasbekleding afschuiven binnentalud, 17 = Sterkte en stabiliteit langsconstructires, 18 = Technische innovaties
+ 'IsRelevant' TINYINT (1) NOT NULL, -- true or false
+ 'InputComments' TEXT,
+ 'OutputComments' TEXT,
+ 'NotRelevantComments' TEXT,
+ CONSTRAINT 'FK_FailureMechanismEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FailureMechanismEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UI_AssessmentSectionEntityId_FailureMechanismType' UNIQUE ('AssessmentSectionEntityId','FailureMechanismType')
+)
+;
+
+CREATE TABLE 'FailureMechanismSectionEntity'
+(
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'FailureMechanismSectionPointXml' TEXT NOT NULL,
+ CONSTRAINT 'FK_FailureMechanismSectionEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingFailureMechanismMetaEntity'
+(
+ 'PipingFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'WaterVolumetricWeight' REAL NOT NULL,
+ 'StochasticSoilModelSourcePath' TEXT,
+ 'SurfaceLineSourcePath' TEXT,
+ CONSTRAINT 'FK_PipingFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresFailureMechanismMetaEntity'
+(
+ 'StrengthStabilityPointConstructionFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresFailureMechanismMetaEntity'
+(
+ 'ClosingStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N2A' INT (4) NOT NULL,
+ CONSTRAINT 'FK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionFailureMechanismMetaEntity'
+(
+ 'DuneErosionFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'CalculationGroupEntity'
+(
+ 'CalculationGroupEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentCalculationGroupEntityId' INTEGER,
+ 'Name' VARCHAR (260),
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_CalculationGroupEntity_CalculationGroupEntity' FOREIGN KEY ('ParentCalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresFailureMechanismMetaEntity'
+(
+ 'HeightStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ CONSTRAINT 'FK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationEntity'
+(
+ 'HydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_HydraulicLocationEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationEntity'
+(
+ 'PipingCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'StochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'EntryPointL' REAL,
+ 'ExitPointL' REAL,
+ 'PhreaticLevelExitMean' REAL,
+ 'PhreaticLevelExitStandardDeviation' REAL,
+ 'DampingFactorExitMean' REAL,
+ 'DampingFactorExitStandardDeviation' REAL,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_PipingCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_StochasticSoilProfileEntity' FOREIGN KEY ('StochasticSoilProfileEntityId') REFERENCES 'StochasticSoilProfileEntity' ('StochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'DikeProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsCalculationEntity'
+(
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'DikeProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'Orientation' REAL,
+ 'CriticalFlowRateMean' REAL,
+ 'CriticalFlowRateStandardDeviation' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'DikeHeightCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'DikeHeight' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'OvertoppingRateCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity' FOREIGN KEY ('DikeProfileEntityId') REFERENCES 'DikeProfileEntity' ('DikeProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'SoilLayerEntity'
+(
+ 'SoilLayerEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SoilProfileEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER NOT NULL, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelDeviation' REAL,
+ 'DiameterD70Mean' REAL,
+ 'DiameterD70CoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'PermeabilityMean' REAL,
+ 'PermeabilityCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SoilLayerEntity_SoilProfileEntity' FOREIGN KEY ('SoilProfileEntityId') REFERENCES 'SoilProfileEntity' ('SoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'SoilProfileEntity'
+(
+ 'SoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Bottom' REAL,
+ 'Name' TEXT
+)
+;
+
+CREATE TABLE 'StochasticSoilProfileEntity'
+(
+ 'StochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SoilProfileEntityId' INTEGER NOT NULL,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'Type' TINYINT (1) NOT NULL, -- Enum: 1 = SoilProfile1D, 2 = SoilProfile2D
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StochasticSoilProfileEntity_SoilProfileEntity' FOREIGN KEY ('SoilProfileEntityId') REFERENCES 'SoilProfileEntity' ('SoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochasticSoilModelEntity'
+(
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'SegmentName' TEXT,
+ 'StochasticSoilModelSegmentPointXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StochasticSoilModelEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_StochasticSoilModelEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'SurfaceLineEntity'
+(
+ 'SurfaceLineEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260),
+ 'ReferenceLineIntersectionX' REAL,
+ 'ReferenceLineIntersectionY' REAL,
+ 'PointsXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SurfaceLineEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_SurfaceLineEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'CharacteristicPointEntity'
+(
+ 'CharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' TINYINT (1) NOT NULL, -- Enum: 1 = DikeToeAtRiver, 2 = DikeToeAtPolder, 3 = DitchDikeSide, 4 = BottomDitchDikeSide, 5 = BottomDitchPolderSide, 6 = DitchPolderSide
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_SurfaceLinePointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationOutputEntity'
+(
+ 'PipingCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveZValue' REAL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftZValue' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerZValue' REAL,
+ 'UpliftEffectiveStress' REAL,
+ 'HeaveGradient' REAL,
+ 'SellmeijerCreepCoefficient' REAL,
+ 'SellmeijerCriticalFall' REAL,
+ 'SellmeijerReducedFall' REAL,
+ CONSTRAINT 'FK_PipingCalculationOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingSemiProbabilisticOutputEntity'
+(
+ 'PipingSemiProbabilisticOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftReliability' REAL,
+ 'UpliftProbability' REAL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveReliability' REAL,
+ 'HeaveProbability' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerReliability' REAL,
+ 'SellmeijerProbability' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'PipingProbability' REAL,
+ 'PipingReliability' REAL,
+ 'PipingFactorOfSafety' REAL,
+ CONSTRAINT 'FK_PipingSemiProbabilisticOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingSectionResultEntity'
+(
+ 'PipingSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_PipingSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsSectionResultEntity'
+(
+ 'GrassCoverErosionInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresSectionResultEntity'
+(
+ 'HeightStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'HeightStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+(
+ 'StrengthStabilityLengthwiseConstructionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TechnicalInnovationSectionResultEntity'
+(
+ 'TechnicalInnovationSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaterPressureAsphaltCoverSectionResultEntity'
+(
+ 'WaterPressureAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresSectionResultEntity'
+(
+ 'ClosingStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'ClosingStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsSectionResultEntity'
+(
+ 'GrassCoverErosionOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffInwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffOutwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacrostabilityInwardsSectionResultEntity'
+(
+ 'MacrostabilityInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' REAL,
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MacrostabilityInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacrostabilityOutwardsSectionResultEntity'
+(
+ 'MacrostabilityOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' REAL,
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MacrostabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverSectionResultEntity'
+(
+ 'WaveImpactAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MicrostabilitySectionResultEntity'
+(
+ 'MicrostabilitySectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingStructureSectionResultEntity'
+(
+ 'PipingStructureSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionSectionResultEntity'
+(
+ 'DuneErosionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverSectionResultEntity'
+(
+ 'StabilityStoneCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresSectionResultEntity'
+(
+ 'StabilityPointStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DikeProfileEntity'
+(
+ 'DikeProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall 2 = Caisson 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ForeshoreXml' TEXT NOT NULL,
+ 'DikeGeometryXml' TEXT NOT NULL,
+ 'DikeHeight' REAL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DikeProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_DikeProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOutputEntity'
+(
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'IsOvertoppingDominant' TINYINT (1) NOT NULL, -- true or false
+ 'WaveHeight' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsCalculationEntity' UNIQUE ('GrassCoverErosionInwardsCalculationEntityId')
+)
+;
+
+CREATE TABLE 'ForeshoreProfileEntity'
+(
+ 'ForeshoreProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'GeometryXml' TEXT NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_ForeshoreProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsCalculationEntity'
+(
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsOutputEntity'
+(
+ 'StabilityStoneCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'OutputType' TINYINT (1) NOT NULL, -- Enum: 1 = Column, 2 = Block
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity' FOREIGN KEY ('StabilityStoneCoverWaveConditionsCalculationEntityId') REFERENCES 'StabilityStoneCoverWaveConditionsCalculationEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity' FOREIGN KEY ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') REFERENCES 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_GrassCoverErosionOutwardsHydraulicLocationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsHydraulicLocationEntityId') REFERENCES 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsHydraulicLocationEntity'
+(
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') REFERENCES 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresOutputEntity'
+(
+ 'HeightStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HeightStructuresCalculationEntity' UNIQUE ('HeightStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HeightStructureEntity'
+(
+ 'HeightStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Id' VARCHAR (260),
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ CONSTRAINT 'FK_HeightStructure_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresCalculationEntity'
+(
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'HeightStructureEntityId' INTEGER,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'StormDurationMean' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'DeviationWaveDirection' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HeightStructureEntity' FOREIGN KEY ('HeightStructureEntityId') REFERENCES 'HeightStructureEntity' ('HeightStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructureEntity'
+(
+ 'ClosingStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Id' VARCHAR (260),
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOrFrequencyOpenStructureBeforeFlooding' REAL,
+ 'FailureProbabilityOpenStructure' REAL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ CONSTRAINT 'FK_ClosingStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresCalculationEntity'
+(
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'ClosingStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (255),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOrFrequencyOpenStructureBeforeFlooding' REAL NOT NULL,
+ 'FailureProbabilityOpenStructure' REAL NOT NULL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL NOT NULL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'DeviationWaveDirection' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ClosingStructureEntity' FOREIGN KEY ('ClosingStructureEntityId') REFERENCES 'ClosingStructureEntity' ('ClosingStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresOutputEntity'
+(
+ 'ClosingStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_ClosingStructuresCalculationEntity' UNIQUE ('ClosingStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'StabilityPointStructureEntity'
+(
+ 'StabilityPointStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Id' VARCHAR (260),
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = LowSill, 2 = FloodedCulvert
+ CONSTRAINT 'FK_StabilityPointStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresOutputEntity'
+(
+ 'StabilityPointStructuresOutputEntity' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_StabilityPointStructuresCalculationEntity' UNIQUE ('StabilityPointStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HydraulicLocationOutputEntity'
+(
+ 'HydraulicLocationEntityOutputId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationOutputType' TINYINT (1) NOT NULL, -- Enum: 1 = DesignWaterLevel, 2 = WaveHeight
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationEntityOutputType' UNIQUE ('HydraulicLocationEntityId','HydraulicLocationOutputType')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity'
+(
+ 'GrassCoverErosionOutwardsHydraulicLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationOutputType' TINYINT (1) NOT NULL, -- Enum: 1 = DesignWaterLevel, 2 = WaveHeight
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GrassCoverErosionOutwardsHydraulicLocationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsHydraulicLocationEntityId') REFERENCES 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationOutputType' UNIQUE ('GrassCoverErosionOutwardsHydraulicLocationEntityId','HydraulicLocationOutputType')
+)
+;
+
+CREATE TABLE 'DuneLocationEntity'
+(
+ 'DuneLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'CoastalAreaId' INT (4) NOT NULL,
+ 'Offset' REAL,
+ 'Orientation' REAL,
+ 'D50' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DuneLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationOutputEntity'
+(
+ 'DuneLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'DuneLocationEntityId' INTEGER NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeriod' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ '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
+)
+;
+
+CREATE TABLE 'BackgroundDataEntity'
+(
+ 'BackgroundDataEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'IsVisible' TINYINT (1) NOT NULL, -- true or false
+ 'Transparency' REAL NOT NULL,
+ 'BackgroundDataType' TINYINT (1) NOT NULL, -- Enum: 1 = Wmts, 2 = WellKnown
+ CONSTRAINT 'FK_BackgroundDataEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataMetaEntity'
+(
+ 'BackgroundDataMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'BackgroundDataEntityId' INTEGER NOT NULL,
+ 'Key' TEXT NOT NULL,
+ 'Value' TEXT NOT NULL,
+ CONSTRAINT 'FK_BackgroundDataMetaEntity_BackgroundDataEntity' FOREIGN KEY ('BackgroundDataEntityId') REFERENCES 'BackgroundDataEntity' ('BackgroundDataEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_BackgroundDataEntityId_Key' UNIQUE ('BackgroundDataEntityId','Key')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+(
+ 'GrassCoverErosionInwardsOvertoppingRateOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'OvertoppingRate' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+/* Create Indexes and Triggers */
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_ProjectEntity'
+ ON 'AssessmentSectionEntity' ('ProjectEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_AssessmentSectionEntity'
+ ON 'FailureMechanismEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_CalculationGroupEntity'
+ ON 'FailureMechanismEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismSectionEntity_FailureMechanismEntity'
+ ON 'FailureMechanismSectionEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'ClosingStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'DuneErosionFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_CalculationGroupEntity_CalculationGroupEntity'
+ ON 'CalculationGroupEntity' ('ParentCalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'HeightStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationEntity_AssessmentSectionEntity'
+ ON 'HydraulicLocationEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_StochasticSoilProfileEntity'
+ ON 'PipingCalculationEntity' ('StochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_SurfaceLineEntity'
+ ON 'PipingCalculationEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_HydraulicLocationEntity'
+ ON 'PipingCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_CalculationGroupEntity'
+ ON 'PipingCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('DikeProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilProfileEntity_SoilProfileEntity'
+ ON 'StochasticSoilProfileEntity' ('SoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'StochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilModelEntity_FailureMechanismEntity'
+ ON 'StochasticSoilModelEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLineEntity_FailureMechanismEntity'
+ ON 'SurfaceLineEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLinePointEntity_SurfaceLineEntity'
+ ON 'CharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationOutputEntity_PipingCalculationEntity'
+ ON 'PipingCalculationOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSemiProbabilisticOutputEntity_PipingCalculationEntity'
+ ON 'PipingSemiProbabilisticOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'HeightStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresSectionResultEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StrengthStabilityLengthwiseConstructionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'TechnicalInnovationSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaterPressureAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacrostabilityInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacrostabilityInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacrostabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacrostabilityOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaveImpactAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MicrostabilitySectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingStructureSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'DuneErosionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityStoneCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DikeProfileEntity_FailureMechanismEntity'
+ ON 'DikeProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ForeshoreProfileEntity_FailureMechanismEntity'
+ ON 'ForeshoreProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity'
+ ON 'StabilityStoneCoverWaveConditionsOutputEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsOutputEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_GrassCoverErosionOutwardsHydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsOutputEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresOutputEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructure_FailureMechanismEntity'
+ ON 'HeightStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'HeightStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'HeightStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HeightStructureEntity'
+ ON 'HeightStructuresCalculationEntity' ('HeightStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'HeightStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructureEntity_FailureMechanismEntity'
+ ON 'ClosingStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'ClosingStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ClosingStructureEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ClosingStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'ClosingStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresOutputEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructureEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresOutputEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_HydraulicLocationEntity'
+ ON 'HydraulicLocationOutputEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GrassCoverErosionOutwardsHydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneLocationEntity_FailureMechanismEntity'
+ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationEntity'
+ ON 'DuneLocationOutputEntity' ('DuneLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity'
+ ON 'BackgroundDataEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataMetaEntity_BackgroundDataEntity'
+ ON 'BackgroundDataMetaEntity' ('BackgroundDataEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.2.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.2.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.2.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,2615 @@
+/* ---------------------------------------------------- */
+/* Generated by Enterprise Architect Version 12.0 */
+/* Created On : 16-Nov-2017 12:03:12 */
+/* DBMS : SQLite */
+/* ---------------------------------------------------- */
+
+/* Drop Tables */
+
+DROP TABLE IF EXISTS 'VersionEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ProjectEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'AssessmentSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'CalculationGroupEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilLayerEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StochasticSoilModelEntity'
+;
+
+DROP TABLE IF EXISTS 'SurfaceLineEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSemiProbabilisticOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'TechnicalInnovationSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaterPressureAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacrostabilityOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MicrostabilitySectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DikeProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ForeshoreProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsHydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'IllustrationPointResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeSubmechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsPreconsolidationStressEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSemiProbabilisticOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+;
+
+/* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */
+
+CREATE TABLE 'VersionEntity'
+(
+ 'VersionId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Version' VARCHAR (20) NOT NULL,
+ 'Timestamp' DATETIME NOT NULL,
+ 'FingerPrint' BLOB NOT NULL
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+(
+ 'GrassCoverErosionInwardsDikeHeightOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'DikeHeight' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'ProjectEntity'
+(
+ 'ProjectEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Description' VARCHAR (260)
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsFailureMechanismMetaEntity'
+(
+ 'MacroStabilityInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'AssessmentSectionEntity'
+(
+ 'AssessmentSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ProjectEntityId' INTEGER NOT NULL,
+ 'Id' TEXT,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'LowerLimitNorm' REAL NOT NULL,
+ 'SignalingNorm' REAL NOT NULL,
+ 'NormativeNormType' TINYINT (1) NOT NULL, -- EnumType: 1 = LowerLimit, 2 = Signaling
+ 'HydraulicDatabaseVersion' TEXT,
+ 'HydraulicDatabaseLocation' TEXT,
+ 'Composition' TINYINT (1) NOT NULL, -- Enum: 1 = Dike, 2 = Dune, 3 = DikeAndDune
+ 'ReferenceLinePointXml' TEXT,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_AssessmentSectionEntity_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismSectionEntity'
+(
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'FailureMechanismSectionPointXml' TEXT NOT NULL,
+ CONSTRAINT 'FK_FailureMechanismSectionEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresCalculationEntity'
+(
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'StabilityPointStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL NOT NULL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL NOT NULL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'LoadSchematizationType' TINYINT (1) NOT NULL, -- Enum: 1 = Linear, 2 = Quadratic
+ 'VolumicWeightWater' REAL,
+ 'StormDurationMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity' FOREIGN KEY ('StabilityPointStructureEntityId') REFERENCES 'StabilityPointStructureEntity' ('StabilityPointStructureEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismEntity'
+(
+ 'FailureMechanismEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'CalculationGroupEntityId' INTEGER,
+ 'FailureMechanismType' SMALLINT NOT NULL, -- Enum: 1 = Piping, 2 = Macrostabiliteit binnenwaarts, 3= Golfklappen op asfaltbekleding, 4= Grasbekleding erosie buitentalud, 5 = Grasbekleding afschuiven buitentalud, 6 = Grasbekleding erosie kruin en binnentalud, 7 = Stabiliteit steenzetting, 8 = Duinafslag, 9 = Hoogte kunstwerk, 10 = Betrouwbaarheid sluiten kunstwerk, 11 = Piping bij kunstwerk, 12 = Sterkte en stabiliteit puntconstructires, 13 = Macrostabiliteit buitenwaarts, 14 = Microstabiliteit, 15 = Wateroverdruk bij asfaltbekleding, 16 = Grasbekleding afschuiven binnentalud, 17 = Sterkte en stabiliteit langsconstructires, 18 = Technische innovaties
+ 'IsRelevant' TINYINT (1) NOT NULL, -- true or false
+ 'InputComments' TEXT,
+ 'OutputComments' TEXT,
+ 'NotRelevantComments' TEXT,
+ CONSTRAINT 'FK_FailureMechanismEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FailureMechanismEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UI_AssessmentSectionEntityId_FailureMechanismType' UNIQUE ('AssessmentSectionEntityId','FailureMechanismType')
+)
+;
+
+CREATE TABLE 'PipingFailureMechanismMetaEntity'
+(
+ 'PipingFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'WaterVolumetricWeight' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_PipingFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresFailureMechanismMetaEntity'
+(
+ 'ClosingStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N2A' INT (4) NOT NULL,
+ 'ClosingStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverFailureMechanismMetaEntity'
+(
+ 'StabilityStoneCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'CalculationGroupEntity'
+(
+ 'CalculationGroupEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentCalculationGroupEntityId' INTEGER,
+ 'Name' VARCHAR (260),
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_CalculationGroupEntity_CalculationGroupEntity' FOREIGN KEY ('ParentCalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresFailureMechanismMetaEntity'
+(
+ 'StabilityPointStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'StabilityPointStructureCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationEntity'
+(
+ 'HydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'ShouldWaveHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldDesignWaterLevelIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_HydraulicLocationEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationEntity'
+(
+ 'PipingCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'PipingStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'EntryPointL' REAL,
+ 'ExitPointL' REAL,
+ 'PhreaticLevelExitMean' REAL,
+ 'PhreaticLevelExitStandardDeviation' REAL,
+ 'DampingFactorExitMean' REAL,
+ 'DampingFactorExitStandardDeviation' REAL,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_PipingCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_PipingStochasticSoilProfileEntity' FOREIGN KEY ('PipingStochasticSoilProfileEntityId') REFERENCES 'PipingStochasticSoilProfileEntity' ('PipingStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'DikeProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionFailureMechanismMetaEntity'
+(
+ 'DuneErosionFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsCalculationEntity'
+(
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'DikeProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'Orientation' REAL,
+ 'CriticalFlowRateMean' REAL,
+ 'CriticalFlowRateStandardDeviation' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'DikeHeightCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'DikeHeight' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'OvertoppingRateCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'ShouldDikeHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingRateIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingOutputIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity' FOREIGN KEY ('DikeProfileEntityId') REFERENCES 'DikeProfileEntity' ('DikeProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresFailureMechanismMetaEntity'
+(
+ 'HeightStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'HeightStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSoilLayerEntity'
+(
+ 'PipingSoilLayerEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelDeviation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'DiameterD70Mean' REAL,
+ 'DiameterD70CoefficientOfVariation' REAL,
+ 'PermeabilityMean' REAL,
+ 'PermeabilityCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingSoilLayerEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSoilProfileEntity'
+(
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Bottom' REAL,
+ 'Name' TEXT NOT NULL,
+ 'SourceType' TINYINT (1) NOT NULL -- Enum: 1 = SoilProfile1D, 2 = SoilProfile2D
+)
+;
+
+CREATE TABLE 'PipingStochasticSoilProfileEntity'
+(
+ 'PipingStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochasticSoilModelEntity'
+(
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'StochasticSoilModelSegmentPointXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StochasticSoilModelEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_StochasticSoilModelEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'SurfaceLineEntity'
+(
+ 'SurfaceLineEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'ReferenceLineIntersectionX' REAL,
+ 'ReferenceLineIntersectionY' REAL,
+ 'PointsXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SurfaceLineEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_SurfaceLineEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'PipingCharacteristicPointEntity'
+(
+ 'PipingCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' TINYINT (1) NOT NULL, -- Enum: 1 = DikeToeAtRiver, 2 = DikeToeAtPolder, 3 = DitchDikeSide, 4 = BottomDitchDikeSide, 5 = BottomDitchPolderSide, 6 = DitchPolderSide
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_SurfaceLinePointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationOutputEntity'
+(
+ 'PipingCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveZValue' REAL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftZValue' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerZValue' REAL,
+ 'UpliftEffectiveStress' REAL,
+ 'HeaveGradient' REAL,
+ 'SellmeijerCreepCoefficient' REAL,
+ 'SellmeijerCriticalFall' REAL,
+ 'SellmeijerReducedFall' REAL,
+ CONSTRAINT 'FK_PipingCalculationOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingSemiProbabilisticOutputEntity'
+(
+ 'PipingSemiProbabilisticOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftReliability' REAL,
+ 'UpliftProbability' REAL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveReliability' REAL,
+ 'HeaveProbability' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerReliability' REAL,
+ 'SellmeijerProbability' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'PipingProbability' REAL,
+ 'PipingReliability' REAL,
+ 'PipingFactorOfSafety' REAL,
+ CONSTRAINT 'FK_PipingSemiProbabilisticOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingSectionResultEntity'
+(
+ 'PipingSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_PipingSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsSectionResultEntity'
+(
+ 'GrassCoverErosionInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresSectionResultEntity'
+(
+ 'HeightStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'HeightStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+(
+ 'StrengthStabilityLengthwiseConstructionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TechnicalInnovationSectionResultEntity'
+(
+ 'TechnicalInnovationSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaterPressureAsphaltCoverSectionResultEntity'
+(
+ 'WaterPressureAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresSectionResultEntity'
+(
+ 'ClosingStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'ClosingStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsSectionResultEntity'
+(
+ 'GrassCoverErosionOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffInwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffOutwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSectionResultEntity'
+(
+ 'MacroStabilityInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacrostabilityOutwardsSectionResultEntity'
+(
+ 'MacrostabilityOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' REAL,
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MacrostabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverSectionResultEntity'
+(
+ 'WaveImpactAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MicrostabilitySectionResultEntity'
+(
+ 'MicrostabilitySectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+(
+ 'WaveImpactAsphaltCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingStructureSectionResultEntity'
+(
+ 'PipingStructureSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionSectionResultEntity'
+(
+ 'DuneErosionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverSectionResultEntity'
+(
+ 'StabilityStoneCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresSectionResultEntity'
+(
+ 'StabilityPointStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DikeProfileEntity'
+(
+ 'DikeProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall 2 = Caisson 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ForeshoreXml' TEXT NOT NULL,
+ 'DikeGeometryXml' TEXT NOT NULL,
+ 'DikeHeight' REAL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DikeProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_DikeProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOutputEntity'
+(
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'IsOvertoppingDominant' TINYINT (1) NOT NULL, -- true or false
+ 'WaveHeight' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsCalculationEntity' UNIQUE ('GrassCoverErosionInwardsCalculationEntityId')
+)
+;
+
+CREATE TABLE 'ForeshoreProfileEntity'
+(
+ 'ForeshoreProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'GeometryXml' TEXT NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_ForeshoreProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_ForeshoreProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsCalculationEntity'
+(
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsOutputEntity'
+(
+ 'StabilityStoneCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'OutputType' TINYINT (1) NOT NULL, -- Enum: 1 = Column, 2 = Block
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity' FOREIGN KEY ('StabilityStoneCoverWaveConditionsCalculationEntityId') REFERENCES 'StabilityStoneCoverWaveConditionsCalculationEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity' FOREIGN KEY ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') REFERENCES 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_GrassCoverErosionOutwardsHydraulicLocationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsHydraulicLocationEntityId') REFERENCES 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsHydraulicLocationEntity'
+(
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'ShouldWaveHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldDesignWaterLevelIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') REFERENCES 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresOutputEntity'
+(
+ 'HeightStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HeightStructuresCalculationEntity' UNIQUE ('HeightStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HeightStructureEntity'
+(
+ 'HeightStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ CONSTRAINT 'FK_HeightStructure_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'HeightStructuresCalculationEntity'
+(
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'HeightStructureEntityId' INTEGER,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'StormDurationMean' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'DeviationWaveDirection' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HeightStructureEntity' FOREIGN KEY ('HeightStructureEntityId') REFERENCES 'HeightStructureEntity' ('HeightStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructureEntity'
+(
+ 'ClosingStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOrFrequencyOpenStructureBeforeFlooding' REAL,
+ 'FailureProbabilityOpenStructure' REAL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ CONSTRAINT 'FK_ClosingStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'ClosingStructuresCalculationEntity'
+(
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'ClosingStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (255),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOrFrequencyOpenStructureBeforeFlooding' REAL NOT NULL,
+ 'FailureProbabilityOpenStructure' REAL NOT NULL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL NOT NULL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'DeviationWaveDirection' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ClosingStructureEntity' FOREIGN KEY ('ClosingStructureEntityId') REFERENCES 'ClosingStructureEntity' ('ClosingStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresOutputEntity'
+(
+ 'ClosingStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'U_ClosingStructuresCalculationEntity' UNIQUE ('ClosingStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'StabilityPointStructureEntity'
+(
+ 'StabilityPointStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = LowSill, 2 = FloodedCulvert
+ CONSTRAINT 'FK_StabilityPointStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresOutputEntity'
+(
+ 'StabilityPointStructuresOutputEntity' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_StabilityPointStructuresCalculationEntity' UNIQUE ('StabilityPointStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HydraulicLocationOutputEntity'
+(
+ 'HydraulicLocationEntityOutputId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER,
+ 'HydraulicLocationOutputType' TINYINT (1) NOT NULL, -- Enum: 1 = DesignWaterLevel, 2 = WaveHeight
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationEntityOutputType' UNIQUE ('HydraulicLocationEntityId','HydraulicLocationOutputType')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity'
+(
+ 'GrassCoverErosionOutwardsHydraulicLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER,
+ 'HydraulicLocationOutputType' TINYINT (1) NOT NULL, -- Enum: 1 = DesignWaterLevel, 2 = WaveHeight
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GrassCoverErosionOutwardsHydraulicLocationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsHydraulicLocationEntityId') REFERENCES 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationOutputType' UNIQUE ('GrassCoverErosionOutwardsHydraulicLocationEntityId','HydraulicLocationOutputType')
+)
+;
+
+CREATE TABLE 'DuneLocationEntity'
+(
+ 'DuneLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'CoastalAreaId' INT (4) NOT NULL,
+ 'Offset' REAL,
+ 'Orientation' REAL,
+ 'D50' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DuneLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationOutputEntity'
+(
+ 'DuneLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'DuneLocationEntityId' INTEGER NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeriod' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ '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
+)
+;
+
+CREATE TABLE 'BackgroundDataEntity'
+(
+ 'BackgroundDataEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'IsVisible' TINYINT (1) NOT NULL, -- true or false
+ 'Transparency' REAL NOT NULL,
+ 'BackgroundDataType' TINYINT (1) NOT NULL, -- Enum: 1 = Wmts, 2 = WellKnown
+ CONSTRAINT 'FK_BackgroundDataEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataMetaEntity'
+(
+ 'BackgroundDataMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'BackgroundDataEntityId' INTEGER NOT NULL,
+ 'Key' TEXT NOT NULL,
+ 'Value' TEXT NOT NULL,
+ CONSTRAINT 'FK_BackgroundDataMetaEntity_BackgroundDataEntity' FOREIGN KEY ('BackgroundDataEntityId') REFERENCES 'BackgroundDataEntity' ('BackgroundDataEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_BackgroundDataEntityId_Key' UNIQUE ('BackgroundDataEntityId','Key')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+(
+ 'GrassCoverErosionInwardsOvertoppingRateOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'OvertoppingRate' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'IllustrationPointResultEntity'
+(
+ 'IllustrationPointResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Description' TEXT NOT NULL,
+ 'Value' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochastEntity'
+(
+ 'StochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultSubMechanismIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultSubMechanismIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultSubMechanisIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'CombinationType' TINYINT (1) NOT NULL, -- Enum: 1 = Or, 2 = And
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint' FOREIGN KEY ('ParentFaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointStochastEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('FaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultFaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultFaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelSubMechanismIllustrationPointEntity'
+(
+ 'TopLevelSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelFaultTreeIllustrationPointEntity'
+(
+ 'TopLevelFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointStochastEntity'
+(
+ 'SubMechanismIllustrationPointStochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Realization' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action
+)
+;
+
+CREATE TABLE 'FaultTreeSubmechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeSubMechanismIllustrationPointEntityId' PRIMARY KEY ('SubMechanismIllustrationPointEntityId','FaultTreeIllustrationPointEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationEntity'
+(
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comment' TEXT,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ 'SlipPlaneMinimumDepth' REAL,
+ 'SlipPlaneMinimumLength' REAL,
+ 'MaximumSliceWidth' REAL,
+ 'MoveGrid' TINYINT (1) NOT NULL, -- true or false
+ 'GridDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic, 2 = Manual
+ 'TangentLineDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Specified, 2 = LayerSeparated
+ 'TangentLineZTop' REAL,
+ 'TangentLineZBottom' REAL,
+ 'TangentLineNumber' INT (4) NOT NULL,
+ 'LeftGridXLeft' REAL,
+ 'LeftGridXRight' REAL,
+ 'LeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'LeftGridZTop' REAL,
+ 'LeftGridZBottom' REAL,
+ 'LeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'RightGridXLeft' REAL,
+ 'RightGridXRight' REAL,
+ 'RightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'RightGridZTop' REAL,
+ 'RightGridZBottom' REAL,
+ 'RightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'DikeSoilScenario' TINYINT (1) NOT NULL, -- Enumtype: 1 = ClayDikeOnClay, 2 = SandDikeOnClay, 3 = ClayDikeOnSand, 4 = SandDikeOnSand
+ 'WaterLevelRiverAverage' REAL,
+ 'DrainageConstructionPresent' TINYINT (1) NOT NULL, -- true or false
+ 'DrainageConstructionCoordinateX' REAL,
+ 'DrainageConstructionCoordinateZ' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopRiver' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopPolder' REAL,
+ 'AdjustPhreaticLine3And4ForUplift' TINYINT (1) NOT NULL, -- true or false
+ 'LeakageLengthOutwardsPhreaticLine3' REAL,
+ 'LeakageLengthInwardsPhreaticLine3' REAL,
+ 'LeakageLengthOutwardsPhreaticLine4' REAL,
+ 'LeakageLengthInwardsPhreaticLine4' REAL,
+ 'PiezometricHeadPhreaticLine2Outwards' REAL,
+ 'PiezometricHeadPhreaticLine2Inwards' REAL,
+ 'LocationInputExtremeWaterLevelPolder' REAL,
+ 'LocationInputExtremeUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputExtremePhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'LocationInputExtremePenetrationLength' REAL,
+ 'LocationInputDailyWaterLevelPolder' REAL,
+ 'LocationInputDailyUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputDailyPhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'CreateZones' TINYINT (1) NOT NULL, -- true or false
+ 'ZoningBoundariesDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic, 2 = Manual
+ 'ZoneBoundaryLeft' REAL,
+ 'ZoneBoundaryRight' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity' FOREIGN KEY ('MacroStabilityInwardsStochasticSoilProfileEntityId') REFERENCES 'MacroStabilityInwardsStochasticSoilProfileEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationOutputEntity'
+(
+ 'MacroStabilityInwardsCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'FactorOfStability' REAL,
+ 'ZValue' REAL,
+ 'ForbiddenZonesXEntryMin' REAL,
+ 'ForbiddenZonesXEntryMax' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterX' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterY' REAL,
+ 'SlidingCurveLeftSlidingCircleRadius' REAL,
+ 'SlidingCurveLeftSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveLeftSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveLeftSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleCenterX' REAL,
+ 'SlidingCurveRightSlidingCircleCenterY' REAL,
+ 'SlidingCurveRightSlidingCircleRadius' REAL,
+ 'SlidingCurveRightSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveRightSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveNonIteratedHorizontalForce' REAL,
+ 'SlidingCurveIteratedHorizontalForce' REAL,
+ 'SlidingCurveSliceXML' TEXT NOT NULL, -- XML representation of MacroStabilityInwardsSlice
+ 'SlipPlaneLeftGridXLeft' REAL,
+ 'SlipPlaneLeftGridXRight' REAL,
+ 'SlipPlaneLeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneLeftGridZTop' REAL,
+ 'SlipPlaneLeftGridZBottom' REAL,
+ 'SlipPlaneLeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridXLeft' REAL,
+ 'SlipPlaneRightGridXRight' REAL,
+ 'SlipPlaneRightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridZTop' REAL,
+ 'SlipPlaneRightGridZBottom' REAL,
+ 'SlipPlaneRightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneTangentLinesXml' TEXT NOT NULL, -- XML representation of TangentLines
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity' FOREIGN KEY ('MacroStabilityInwardsCalculationEntityId') REFERENCES 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCharacteristicPointEntity'
+(
+ 'MacroStabilityInwardsCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' SMALLINT NOT NULL, -- Enumtype: 1 = SurfaceLevelOutside 2 = DikeTopAtRiver 3 = DikeToeAtRiver 4 = DikeTopAtPolder 5 = ShoulderBaseInside 6 = ShoulderTopInside 7 = DikeToeAtPolder 8 = DitchDikeSide 9 = BottomDitchDikeSide 10 = BottomDitchPolderSide 11 = DitchPolderSide 12 = SurfaceLevelInside
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCharacteristicPointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerOneDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileOneDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Bottom' REAL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentMacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'OuterRingXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('ParentMacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsStochasticSoilProfileEntity'
+(
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsPreconsolidationStressEntity'
+(
+ 'MacroStabilityInwardsPreconsolidationStressEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'CoordinateX' REAL NOT NULL,
+ 'CoordinateZ' REAL NOT NULL,
+ 'PreconsolidationStressMean' REAL,
+ 'PreconsolidationStressCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsPreconsolidationStressEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSemiProbabilisticOutputEntity'
+(
+ 'MacroStabilityInwardsSemiProbabilisticOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'FactorOfStability' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'MacroStabilityInwardsProbability' REAL,
+ 'MacroStabilityInwardsReliability' REAL,
+ 'MacroStabilityInwardsFactorOfSafety' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSemiProbabilisticOutputEntity_MacroStabilityInwardsCalculationEntity' FOREIGN KEY ('MacroStabilityInwardsCalculationEntityId') REFERENCES 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity' PRIMARY KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId','MacroStabilityInwardsSoilLayerTwoDEntityId'),
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+/* Create Indexes and Triggers */
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsDikeHeightOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsDikeHeightOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'MacroStabilityInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_ProjectEntity'
+ ON 'AssessmentSectionEntity' ('ProjectEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismSectionEntity_FailureMechanismEntity'
+ ON 'FailureMechanismSectionEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_AssessmentSectionEntity'
+ ON 'FailureMechanismEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_CalculationGroupEntity'
+ ON 'FailureMechanismEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'ClosingStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityStoneCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_CalculationGroupEntity_CalculationGroupEntity'
+ ON 'CalculationGroupEntity' ('ParentCalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationEntity_AssessmentSectionEntity'
+ ON 'HydraulicLocationEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_PipingStochasticSoilProfileEntity'
+ ON 'PipingCalculationEntity' ('PipingStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_SurfaceLineEntity'
+ ON 'PipingCalculationEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_HydraulicLocationEntity'
+ ON 'PipingCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_CalculationGroupEntity'
+ ON 'PipingCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'DuneErosionFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('DikeProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'HeightStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_SoilProfileEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('PipingSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilModelEntity_FailureMechanismEntity'
+ ON 'StochasticSoilModelEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLineEntity_FailureMechanismEntity'
+ ON 'SurfaceLineEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLinePointEntity_SurfaceLineEntity'
+ ON 'PipingCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationOutputEntity_PipingCalculationEntity'
+ ON 'PipingCalculationOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSemiProbabilisticOutputEntity_PipingCalculationEntity'
+ ON 'PipingSemiProbabilisticOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'HeightStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresSectionResultEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StrengthStabilityLengthwiseConstructionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'TechnicalInnovationSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaterPressureAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacroStabilityInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacrostabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacrostabilityOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaveImpactAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MicrostabilitySectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'WaveImpactAsphaltCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingStructureSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'DuneErosionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityStoneCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DikeProfileEntity_FailureMechanismEntity'
+ ON 'DikeProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_ForeshoreProfileEntity_FailureMechanismEntity'
+ ON 'ForeshoreProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity'
+ ON 'StabilityStoneCoverWaveConditionsOutputEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsOutputEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_GrassCoverErosionOutwardsHydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsOutputEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresOutputEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHeightStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON HeightStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HeightStructure_FailureMechanismEntity'
+ ON 'HeightStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'HeightStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'HeightStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HeightStructureEntity'
+ ON 'HeightStructuresCalculationEntity' ('HeightStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'HeightStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructureEntity_FailureMechanismEntity'
+ ON 'ClosingStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'ClosingStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ClosingStructureEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ClosingStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'ClosingStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresOutputEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteClosingStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON ClosingStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructureEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresOutputEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteStabilityPointStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON StabilityPointStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'HydraulicLocationOutputEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_HydraulicLocationEntity'
+ ON 'HydraulicLocationOutputEntity' ('HydraulicLocationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHydraulicLocationOutputEntity_RemoveGeneralResultSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON HydraulicLocationOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultSubMechanismIllustrationPointEntity
+ WHERE OLD.GeneralResultSubMechanismIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultSubMechanismIllustrationPointEntityId IS OLD.GeneralResultSubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GrassCoverErosionOutwardsHydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionOutwardsHydraulicLocationOutputEntity_RemoveGeneralResultSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionOutwardsHydraulicLocationOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultSubMechanismIllustrationPointEntity
+ WHERE OLD.GeneralResultSubMechanismIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultSubMechanismIllustrationPointEntityId IS OLD.GeneralResultSubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_DuneLocationEntity_FailureMechanismEntity'
+ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationEntity'
+ ON 'DuneLocationOutputEntity' ('DuneLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity'
+ ON 'BackgroundDataEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataMetaEntity_BackgroundDataEntity'
+ ON 'BackgroundDataMetaEntity' ('BackgroundDataEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOvertoppingRateOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOvertoppingRateOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity'
+ ON 'IllustrationPointResultEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultSubMechanismIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultSubMechanismIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointEntity' ('ParentFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON FaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultFaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelSubMechanismIllustrationPointEntity_RemoveSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelSubMechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubMechanismIllustrationPointEntity
+ WHERE OLD.SubMechanismIllustrationPointEntityId IS NOT NULL
+ AND SubMechanismIllustrationPointEntityId IS OLD.SubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelFaultTreeIllustrationPointEntity_RemoveFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelFaultTreeIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM FaultTreeIllustrationPointEntity
+ WHERE OLD.FaultTreeIllustrationPointEntityId IS NOT NULL
+ AND FaultTreeIllustrationPointEntityId IS OLD.FaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity'
+ ON 'SubMechanismIllustrationPointStochastEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeSubmechanismIllustrationPointEntity_RemoveSubmechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON FaultTreeSubmechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubmechanismIllustrationPointEntity
+ WHERE OLD.SubmechanismIllustrationPointEntityId IS NOT NULL
+ AND SubmechanismIllustrationPointEntityId IS OLD.SubmechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity'
+ ON 'MacroStabilityInwardsCalculationOutputEntity' ('MacroStabilityInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityCharacteristicPointEntity_SurfaceLineEntity'
+ ON 'MacroStabilityInwardsCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity'
+ ON 'MacroStabilityInwardsSoilLayerOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'MacroStabilityInwardsStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+CREATE TRIGGER [TR_BeforeInsertMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE INSERT
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_BeforeUpdateMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE UPDATE
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_AfterDeleteMacroStabilityInwardsSoilProfileTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity]
+ AFTER DELETE
+ ON MacroStabilityInwardsSoilProfileTwoDEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM MacroStabilityInwardsSoilLayerTwoDEntity
+ WHERE OLD.MacroStabilityInwardsSoilLayerTwoDEntity IS NOT NULL
+ AND MacroStabilityInwardsSoilLayerTwoDEntity IS OLD.MacroStabilityInwardsSoilLayerTwoDEntity;
+END;
+;
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.3.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.3.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure17.3.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,2615 @@
+/* ---------------------------------------------------- */
+/* Generated by Enterprise Architect Version 12.0 */
+/* Created On : 16-Nov-2017 12:03:12 */
+/* DBMS : SQLite */
+/* ---------------------------------------------------- */
+
+/* Drop Tables */
+
+DROP TABLE IF EXISTS 'VersionEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ProjectEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'AssessmentSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'CalculationGroupEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilLayerEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StochasticSoilModelEntity'
+;
+
+DROP TABLE IF EXISTS 'SurfaceLineEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSemiProbabilisticOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'TechnicalInnovationSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaterPressureAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacrostabilityOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MicrostabilitySectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DikeProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ForeshoreProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsHydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'IllustrationPointResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeSubmechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsPreconsolidationStressEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSemiProbabilisticOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+;
+
+/* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */
+
+CREATE TABLE 'VersionEntity'
+(
+ 'VersionId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Version' VARCHAR (20) NOT NULL,
+ 'Timestamp' DATETIME NOT NULL,
+ 'FingerPrint' BLOB NOT NULL
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+(
+ 'GrassCoverErosionInwardsDikeHeightOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'DikeHeight' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'ProjectEntity'
+(
+ 'ProjectEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Description' VARCHAR (260)
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsFailureMechanismMetaEntity'
+(
+ 'MacroStabilityInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'AssessmentSectionEntity'
+(
+ 'AssessmentSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ProjectEntityId' INTEGER NOT NULL,
+ 'Id' TEXT,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'LowerLimitNorm' REAL NOT NULL,
+ 'SignalingNorm' REAL NOT NULL,
+ 'NormativeNormType' TINYINT (1) NOT NULL, -- EnumType: 1 = LowerLimit, 2 = Signaling
+ 'HydraulicDatabaseVersion' TEXT,
+ 'HydraulicDatabaseLocation' TEXT,
+ 'Composition' TINYINT (1) NOT NULL, -- Enum: 1 = Dike, 2 = Dune, 3 = DikeAndDune
+ 'ReferenceLinePointXml' TEXT,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_AssessmentSectionEntity_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismSectionEntity'
+(
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'FailureMechanismSectionPointXml' TEXT NOT NULL,
+ CONSTRAINT 'FK_FailureMechanismSectionEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresCalculationEntity'
+(
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'StabilityPointStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL NOT NULL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL NOT NULL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'LoadSchematizationType' TINYINT (1) NOT NULL, -- Enum: 1 = Linear, 2 = Quadratic
+ 'VolumicWeightWater' REAL,
+ 'StormDurationMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity' FOREIGN KEY ('StabilityPointStructureEntityId') REFERENCES 'StabilityPointStructureEntity' ('StabilityPointStructureEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismEntity'
+(
+ 'FailureMechanismEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'CalculationGroupEntityId' INTEGER,
+ 'FailureMechanismType' SMALLINT NOT NULL, -- Enum: 1 = Piping, 2 = Macrostabiliteit binnenwaarts, 3= Golfklappen op asfaltbekleding, 4= Grasbekleding erosie buitentalud, 5 = Grasbekleding afschuiven buitentalud, 6 = Grasbekleding erosie kruin en binnentalud, 7 = Stabiliteit steenzetting, 8 = Duinafslag, 9 = Hoogte kunstwerk, 10 = Betrouwbaarheid sluiten kunstwerk, 11 = Piping bij kunstwerk, 12 = Sterkte en stabiliteit puntconstructires, 13 = Macrostabiliteit buitenwaarts, 14 = Microstabiliteit, 15 = Wateroverdruk bij asfaltbekleding, 16 = Grasbekleding afschuiven binnentalud, 17 = Sterkte en stabiliteit langsconstructires, 18 = Technische innovaties
+ 'IsRelevant' TINYINT (1) NOT NULL, -- true or false
+ 'InputComments' TEXT,
+ 'OutputComments' TEXT,
+ 'NotRelevantComments' TEXT,
+ CONSTRAINT 'FK_FailureMechanismEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FailureMechanismEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UI_AssessmentSectionEntityId_FailureMechanismType' UNIQUE ('AssessmentSectionEntityId','FailureMechanismType')
+)
+;
+
+CREATE TABLE 'PipingFailureMechanismMetaEntity'
+(
+ 'PipingFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'WaterVolumetricWeight' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_PipingFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresFailureMechanismMetaEntity'
+(
+ 'ClosingStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N2A' INT (4) NOT NULL,
+ 'ClosingStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverFailureMechanismMetaEntity'
+(
+ 'StabilityStoneCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'CalculationGroupEntity'
+(
+ 'CalculationGroupEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentCalculationGroupEntityId' INTEGER,
+ 'Name' VARCHAR (260),
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_CalculationGroupEntity_CalculationGroupEntity' FOREIGN KEY ('ParentCalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresFailureMechanismMetaEntity'
+(
+ 'StabilityPointStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'StabilityPointStructureCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationEntity'
+(
+ 'HydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'ShouldWaveHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldDesignWaterLevelIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_HydraulicLocationEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationEntity'
+(
+ 'PipingCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'PipingStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'EntryPointL' REAL,
+ 'ExitPointL' REAL,
+ 'PhreaticLevelExitMean' REAL,
+ 'PhreaticLevelExitStandardDeviation' REAL,
+ 'DampingFactorExitMean' REAL,
+ 'DampingFactorExitStandardDeviation' REAL,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_PipingCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_PipingStochasticSoilProfileEntity' FOREIGN KEY ('PipingStochasticSoilProfileEntityId') REFERENCES 'PipingStochasticSoilProfileEntity' ('PipingStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'DikeProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionFailureMechanismMetaEntity'
+(
+ 'DuneErosionFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsCalculationEntity'
+(
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'DikeProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'Orientation' REAL,
+ 'CriticalFlowRateMean' REAL,
+ 'CriticalFlowRateStandardDeviation' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'DikeHeightCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'DikeHeight' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'OvertoppingRateCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'ShouldDikeHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingRateIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingOutputIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity' FOREIGN KEY ('DikeProfileEntityId') REFERENCES 'DikeProfileEntity' ('DikeProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresFailureMechanismMetaEntity'
+(
+ 'HeightStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'HeightStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' INT (4) NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSoilLayerEntity'
+(
+ 'PipingSoilLayerEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelDeviation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'DiameterD70Mean' REAL,
+ 'DiameterD70CoefficientOfVariation' REAL,
+ 'PermeabilityMean' REAL,
+ 'PermeabilityCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingSoilLayerEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSoilProfileEntity'
+(
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Bottom' REAL,
+ 'Name' TEXT NOT NULL,
+ 'SourceType' TINYINT (1) NOT NULL -- Enum: 1 = SoilProfile1D, 2 = SoilProfile2D
+)
+;
+
+CREATE TABLE 'PipingStochasticSoilProfileEntity'
+(
+ 'PipingStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochasticSoilModelEntity'
+(
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'StochasticSoilModelSegmentPointXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StochasticSoilModelEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_StochasticSoilModelEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'SurfaceLineEntity'
+(
+ 'SurfaceLineEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'ReferenceLineIntersectionX' REAL,
+ 'ReferenceLineIntersectionY' REAL,
+ 'PointsXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SurfaceLineEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_SurfaceLineEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'PipingCharacteristicPointEntity'
+(
+ 'PipingCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' TINYINT (1) NOT NULL, -- Enum: 1 = DikeToeAtRiver, 2 = DikeToeAtPolder, 3 = DitchDikeSide, 4 = BottomDitchDikeSide, 5 = BottomDitchPolderSide, 6 = DitchPolderSide
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_SurfaceLinePointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationOutputEntity'
+(
+ 'PipingCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveZValue' REAL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftZValue' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerZValue' REAL,
+ 'UpliftEffectiveStress' REAL,
+ 'HeaveGradient' REAL,
+ 'SellmeijerCreepCoefficient' REAL,
+ 'SellmeijerCriticalFall' REAL,
+ 'SellmeijerReducedFall' REAL,
+ CONSTRAINT 'FK_PipingCalculationOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingSemiProbabilisticOutputEntity'
+(
+ 'PipingSemiProbabilisticOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftReliability' REAL,
+ 'UpliftProbability' REAL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveReliability' REAL,
+ 'HeaveProbability' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerReliability' REAL,
+ 'SellmeijerProbability' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'PipingProbability' REAL,
+ 'PipingReliability' REAL,
+ 'PipingFactorOfSafety' REAL,
+ CONSTRAINT 'FK_PipingSemiProbabilisticOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingSectionResultEntity'
+(
+ 'PipingSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_PipingSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsSectionResultEntity'
+(
+ 'GrassCoverErosionInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresSectionResultEntity'
+(
+ 'HeightStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'HeightStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+(
+ 'StrengthStabilityLengthwiseConstructionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TechnicalInnovationSectionResultEntity'
+(
+ 'TechnicalInnovationSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaterPressureAsphaltCoverSectionResultEntity'
+(
+ 'WaterPressureAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresSectionResultEntity'
+(
+ 'ClosingStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'ClosingStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsSectionResultEntity'
+(
+ 'GrassCoverErosionOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffInwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffOutwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSectionResultEntity'
+(
+ 'MacroStabilityInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacrostabilityOutwardsSectionResultEntity'
+(
+ 'MacrostabilityOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' REAL,
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MacrostabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverSectionResultEntity'
+(
+ 'WaveImpactAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MicrostabilitySectionResultEntity'
+(
+ 'MicrostabilitySectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+(
+ 'WaveImpactAsphaltCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingStructureSectionResultEntity'
+(
+ 'PipingStructureSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionSectionResultEntity'
+(
+ 'DuneErosionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverSectionResultEntity'
+(
+ 'StabilityStoneCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerTwoA' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = Failed, 3 = Successful
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresSectionResultEntity'
+(
+ 'StabilityPointStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER,
+ 'LayerOne' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'LayerThree' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DikeProfileEntity'
+(
+ 'DikeProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall 2 = Caisson 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ForeshoreXml' TEXT NOT NULL,
+ 'DikeGeometryXml' TEXT NOT NULL,
+ 'DikeHeight' REAL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DikeProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_DikeProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOutputEntity'
+(
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'IsOvertoppingDominant' TINYINT (1) NOT NULL, -- true or false
+ 'WaveHeight' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsCalculationEntity' UNIQUE ('GrassCoverErosionInwardsCalculationEntityId')
+)
+;
+
+CREATE TABLE 'ForeshoreProfileEntity'
+(
+ 'ForeshoreProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'GeometryXml' TEXT NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_ForeshoreProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_ForeshoreProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsCalculationEntity'
+(
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsOutputEntity'
+(
+ 'StabilityStoneCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'OutputType' TINYINT (1) NOT NULL, -- Enum: 1 = Column, 2 = Block
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity' FOREIGN KEY ('StabilityStoneCoverWaveConditionsCalculationEntityId') REFERENCES 'StabilityStoneCoverWaveConditionsCalculationEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity' FOREIGN KEY ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') REFERENCES 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_GrassCoverErosionOutwardsHydraulicLocationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsHydraulicLocationEntityId') REFERENCES 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsHydraulicLocationEntity'
+(
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'ShouldWaveHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldDesignWaterLevelIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') REFERENCES 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresOutputEntity'
+(
+ 'HeightStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HeightStructuresCalculationEntity' UNIQUE ('HeightStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HeightStructureEntity'
+(
+ 'HeightStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ CONSTRAINT 'FK_HeightStructure_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'HeightStructuresCalculationEntity'
+(
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'HeightStructureEntityId' INTEGER,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'StormDurationMean' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'DeviationWaveDirection' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HeightStructureEntity' FOREIGN KEY ('HeightStructureEntityId') REFERENCES 'HeightStructureEntity' ('HeightStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructureEntity'
+(
+ 'ClosingStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOrFrequencyOpenStructureBeforeFlooding' REAL,
+ 'FailureProbabilityOpenStructure' REAL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ CONSTRAINT 'FK_ClosingStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'ClosingStructuresCalculationEntity'
+(
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'ClosingStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (255),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOrFrequencyOpenStructureBeforeFlooding' REAL NOT NULL,
+ 'FailureProbabilityOpenStructure' REAL NOT NULL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL NOT NULL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'DeviationWaveDirection' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ClosingStructureEntity' FOREIGN KEY ('ClosingStructureEntityId') REFERENCES 'ClosingStructureEntity' ('ClosingStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresOutputEntity'
+(
+ 'ClosingStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'U_ClosingStructuresCalculationEntity' UNIQUE ('ClosingStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'StabilityPointStructureEntity'
+(
+ 'StabilityPointStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = LowSill, 2 = FloodedCulvert
+ CONSTRAINT 'FK_StabilityPointStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresOutputEntity'
+(
+ 'StabilityPointStructuresOutputEntity' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'Probability' REAL,
+ 'Reliability' REAL,
+ 'FactorOfSafety' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_StabilityPointStructuresCalculationEntity' UNIQUE ('StabilityPointStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HydraulicLocationOutputEntity'
+(
+ 'HydraulicLocationEntityOutputId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER,
+ 'HydraulicLocationOutputType' TINYINT (1) NOT NULL, -- Enum: 1 = DesignWaterLevel, 2 = WaveHeight
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationEntityOutputType' UNIQUE ('HydraulicLocationEntityId','HydraulicLocationOutputType')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity'
+(
+ 'GrassCoverErosionOutwardsHydraulicLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER,
+ 'HydraulicLocationOutputType' TINYINT (1) NOT NULL, -- Enum: 1 = DesignWaterLevel, 2 = WaveHeight
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GrassCoverErosionOutwardsHydraulicLocationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsHydraulicLocationEntityId') REFERENCES 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationOutputType' UNIQUE ('GrassCoverErosionOutwardsHydraulicLocationEntityId','HydraulicLocationOutputType')
+)
+;
+
+CREATE TABLE 'DuneLocationEntity'
+(
+ 'DuneLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'CoastalAreaId' INT (4) NOT NULL,
+ 'Offset' REAL,
+ 'Orientation' REAL,
+ 'D50' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DuneLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationOutputEntity'
+(
+ 'DuneLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'DuneLocationEntityId' INTEGER NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeriod' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ '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
+)
+;
+
+CREATE TABLE 'BackgroundDataEntity'
+(
+ 'BackgroundDataEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'IsVisible' TINYINT (1) NOT NULL, -- true or false
+ 'Transparency' REAL NOT NULL,
+ 'BackgroundDataType' TINYINT (1) NOT NULL, -- Enum: 1 = Wmts, 2 = WellKnown
+ CONSTRAINT 'FK_BackgroundDataEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataMetaEntity'
+(
+ 'BackgroundDataMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'BackgroundDataEntityId' INTEGER NOT NULL,
+ 'Key' TEXT NOT NULL,
+ 'Value' TEXT NOT NULL,
+ CONSTRAINT 'FK_BackgroundDataMetaEntity_BackgroundDataEntity' FOREIGN KEY ('BackgroundDataEntityId') REFERENCES 'BackgroundDataEntity' ('BackgroundDataEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_BackgroundDataEntityId_Key' UNIQUE ('BackgroundDataEntityId','Key')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+(
+ 'GrassCoverErosionInwardsOvertoppingRateOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'OvertoppingRate' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'IllustrationPointResultEntity'
+(
+ 'IllustrationPointResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Description' TEXT NOT NULL,
+ 'Value' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochastEntity'
+(
+ 'StochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultSubMechanismIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultSubMechanismIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultSubMechanisIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'CombinationType' TINYINT (1) NOT NULL, -- Enum: 1 = Or, 2 = And
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint' FOREIGN KEY ('ParentFaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointStochastEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('FaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultFaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultFaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelSubMechanismIllustrationPointEntity'
+(
+ 'TopLevelSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelFaultTreeIllustrationPointEntity'
+(
+ 'TopLevelFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointStochastEntity'
+(
+ 'SubMechanismIllustrationPointStochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Realization' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action
+)
+;
+
+CREATE TABLE 'FaultTreeSubmechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeSubMechanismIllustrationPointEntityId' PRIMARY KEY ('SubMechanismIllustrationPointEntityId','FaultTreeIllustrationPointEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationEntity'
+(
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comment' TEXT,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ 'SlipPlaneMinimumDepth' REAL,
+ 'SlipPlaneMinimumLength' REAL,
+ 'MaximumSliceWidth' REAL,
+ 'MoveGrid' TINYINT (1) NOT NULL, -- true or false
+ 'GridDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic, 2 = Manual
+ 'TangentLineDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Specified, 2 = LayerSeparated
+ 'TangentLineZTop' REAL,
+ 'TangentLineZBottom' REAL,
+ 'TangentLineNumber' INT (4) NOT NULL,
+ 'LeftGridXLeft' REAL,
+ 'LeftGridXRight' REAL,
+ 'LeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'LeftGridZTop' REAL,
+ 'LeftGridZBottom' REAL,
+ 'LeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'RightGridXLeft' REAL,
+ 'RightGridXRight' REAL,
+ 'RightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'RightGridZTop' REAL,
+ 'RightGridZBottom' REAL,
+ 'RightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'DikeSoilScenario' TINYINT (1) NOT NULL, -- Enumtype: 1 = ClayDikeOnClay, 2 = SandDikeOnClay, 3 = ClayDikeOnSand, 4 = SandDikeOnSand
+ 'WaterLevelRiverAverage' REAL,
+ 'DrainageConstructionPresent' TINYINT (1) NOT NULL, -- true or false
+ 'DrainageConstructionCoordinateX' REAL,
+ 'DrainageConstructionCoordinateZ' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopRiver' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopPolder' REAL,
+ 'AdjustPhreaticLine3And4ForUplift' TINYINT (1) NOT NULL, -- true or false
+ 'LeakageLengthOutwardsPhreaticLine3' REAL,
+ 'LeakageLengthInwardsPhreaticLine3' REAL,
+ 'LeakageLengthOutwardsPhreaticLine4' REAL,
+ 'LeakageLengthInwardsPhreaticLine4' REAL,
+ 'PiezometricHeadPhreaticLine2Outwards' REAL,
+ 'PiezometricHeadPhreaticLine2Inwards' REAL,
+ 'LocationInputExtremeWaterLevelPolder' REAL,
+ 'LocationInputExtremeUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputExtremePhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'LocationInputExtremePenetrationLength' REAL,
+ 'LocationInputDailyWaterLevelPolder' REAL,
+ 'LocationInputDailyUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputDailyPhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'CreateZones' TINYINT (1) NOT NULL, -- true or false
+ 'ZoningBoundariesDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic, 2 = Manual
+ 'ZoneBoundaryLeft' REAL,
+ 'ZoneBoundaryRight' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity' FOREIGN KEY ('MacroStabilityInwardsStochasticSoilProfileEntityId') REFERENCES 'MacroStabilityInwardsStochasticSoilProfileEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationOutputEntity'
+(
+ 'MacroStabilityInwardsCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'FactorOfStability' REAL,
+ 'ZValue' REAL,
+ 'ForbiddenZonesXEntryMin' REAL,
+ 'ForbiddenZonesXEntryMax' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterX' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterY' REAL,
+ 'SlidingCurveLeftSlidingCircleRadius' REAL,
+ 'SlidingCurveLeftSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveLeftSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveLeftSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleCenterX' REAL,
+ 'SlidingCurveRightSlidingCircleCenterY' REAL,
+ 'SlidingCurveRightSlidingCircleRadius' REAL,
+ 'SlidingCurveRightSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveRightSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveNonIteratedHorizontalForce' REAL,
+ 'SlidingCurveIteratedHorizontalForce' REAL,
+ 'SlidingCurveSliceXML' TEXT NOT NULL, -- XML representation of MacroStabilityInwardsSlice
+ 'SlipPlaneLeftGridXLeft' REAL,
+ 'SlipPlaneLeftGridXRight' REAL,
+ 'SlipPlaneLeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneLeftGridZTop' REAL,
+ 'SlipPlaneLeftGridZBottom' REAL,
+ 'SlipPlaneLeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridXLeft' REAL,
+ 'SlipPlaneRightGridXRight' REAL,
+ 'SlipPlaneRightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridZTop' REAL,
+ 'SlipPlaneRightGridZBottom' REAL,
+ 'SlipPlaneRightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneTangentLinesXml' TEXT NOT NULL, -- XML representation of TangentLines
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity' FOREIGN KEY ('MacroStabilityInwardsCalculationEntityId') REFERENCES 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCharacteristicPointEntity'
+(
+ 'MacroStabilityInwardsCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' SMALLINT NOT NULL, -- Enumtype: 1 = SurfaceLevelOutside 2 = DikeTopAtRiver 3 = DikeToeAtRiver 4 = DikeTopAtPolder 5 = ShoulderBaseInside 6 = ShoulderTopInside 7 = DikeToeAtPolder 8 = DitchDikeSide 9 = BottomDitchDikeSide 10 = BottomDitchPolderSide 11 = DitchPolderSide 12 = SurfaceLevelInside
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCharacteristicPointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerOneDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileOneDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Bottom' REAL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentMacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'OuterRingXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('ParentMacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsStochasticSoilProfileEntity'
+(
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsPreconsolidationStressEntity'
+(
+ 'MacroStabilityInwardsPreconsolidationStressEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'CoordinateX' REAL NOT NULL,
+ 'CoordinateZ' REAL NOT NULL,
+ 'PreconsolidationStressMean' REAL,
+ 'PreconsolidationStressCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsPreconsolidationStressEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSemiProbabilisticOutputEntity'
+(
+ 'MacroStabilityInwardsSemiProbabilisticOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'FactorOfStability' REAL,
+ 'RequiredProbability' REAL,
+ 'RequiredReliability' REAL,
+ 'MacroStabilityInwardsProbability' REAL,
+ 'MacroStabilityInwardsReliability' REAL,
+ 'MacroStabilityInwardsFactorOfSafety' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSemiProbabilisticOutputEntity_MacroStabilityInwardsCalculationEntity' FOREIGN KEY ('MacroStabilityInwardsCalculationEntityId') REFERENCES 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity' PRIMARY KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId','MacroStabilityInwardsSoilLayerTwoDEntityId'),
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+/* Create Indexes and Triggers */
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsDikeHeightOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsDikeHeightOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'MacroStabilityInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_ProjectEntity'
+ ON 'AssessmentSectionEntity' ('ProjectEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismSectionEntity_FailureMechanismEntity'
+ ON 'FailureMechanismSectionEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_AssessmentSectionEntity'
+ ON 'FailureMechanismEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_CalculationGroupEntity'
+ ON 'FailureMechanismEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'ClosingStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityStoneCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_CalculationGroupEntity_CalculationGroupEntity'
+ ON 'CalculationGroupEntity' ('ParentCalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationEntity_AssessmentSectionEntity'
+ ON 'HydraulicLocationEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_PipingStochasticSoilProfileEntity'
+ ON 'PipingCalculationEntity' ('PipingStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_SurfaceLineEntity'
+ ON 'PipingCalculationEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_HydraulicLocationEntity'
+ ON 'PipingCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_CalculationGroupEntity'
+ ON 'PipingCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'DuneErosionFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('DikeProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'HeightStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_SoilProfileEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('PipingSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilModelEntity_FailureMechanismEntity'
+ ON 'StochasticSoilModelEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLineEntity_FailureMechanismEntity'
+ ON 'SurfaceLineEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLinePointEntity_SurfaceLineEntity'
+ ON 'PipingCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationOutputEntity_PipingCalculationEntity'
+ ON 'PipingCalculationOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSemiProbabilisticOutputEntity_PipingCalculationEntity'
+ ON 'PipingSemiProbabilisticOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'HeightStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresSectionResultEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StrengthStabilityLengthwiseConstructionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'TechnicalInnovationSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaterPressureAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacroStabilityInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacrostabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacrostabilityOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaveImpactAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MicrostabilitySectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'WaveImpactAsphaltCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingStructureSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'DuneErosionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityStoneCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DikeProfileEntity_FailureMechanismEntity'
+ ON 'DikeProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_ForeshoreProfileEntity_FailureMechanismEntity'
+ ON 'ForeshoreProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity'
+ ON 'StabilityStoneCoverWaveConditionsOutputEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsOutputEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_GrassCoverErosionOutwardsHydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsOutputEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresOutputEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHeightStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON HeightStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HeightStructure_FailureMechanismEntity'
+ ON 'HeightStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'HeightStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'HeightStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HeightStructureEntity'
+ ON 'HeightStructuresCalculationEntity' ('HeightStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'HeightStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructureEntity_FailureMechanismEntity'
+ ON 'ClosingStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'ClosingStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ClosingStructureEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ClosingStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'ClosingStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresOutputEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteClosingStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON ClosingStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructureEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresOutputEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteStabilityPointStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON StabilityPointStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'HydraulicLocationOutputEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_HydraulicLocationEntity'
+ ON 'HydraulicLocationOutputEntity' ('HydraulicLocationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHydraulicLocationOutputEntity_RemoveGeneralResultSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON HydraulicLocationOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultSubMechanismIllustrationPointEntity
+ WHERE OLD.GeneralResultSubMechanismIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultSubMechanismIllustrationPointEntityId IS OLD.GeneralResultSubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsHydraulicLocationOutputEntity_GrassCoverErosionOutwardsHydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsHydraulicLocationOutputEntity' ('GrassCoverErosionOutwardsHydraulicLocationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionOutwardsHydraulicLocationOutputEntity_RemoveGeneralResultSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionOutwardsHydraulicLocationOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultSubMechanismIllustrationPointEntity
+ WHERE OLD.GeneralResultSubMechanismIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultSubMechanismIllustrationPointEntityId IS OLD.GeneralResultSubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_DuneLocationEntity_FailureMechanismEntity'
+ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneLocationOutputEntity_DuneLocationEntity'
+ ON 'DuneLocationOutputEntity' ('DuneLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity'
+ ON 'BackgroundDataEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataMetaEntity_BackgroundDataEntity'
+ ON 'BackgroundDataMetaEntity' ('BackgroundDataEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOvertoppingRateOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOvertoppingRateOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity'
+ ON 'IllustrationPointResultEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultSubMechanismIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultSubMechanismIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointEntity' ('ParentFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON FaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultFaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelSubMechanismIllustrationPointEntity_RemoveSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelSubMechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubMechanismIllustrationPointEntity
+ WHERE OLD.SubMechanismIllustrationPointEntityId IS NOT NULL
+ AND SubMechanismIllustrationPointEntityId IS OLD.SubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelFaultTreeIllustrationPointEntity_RemoveFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelFaultTreeIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM FaultTreeIllustrationPointEntity
+ WHERE OLD.FaultTreeIllustrationPointEntityId IS NOT NULL
+ AND FaultTreeIllustrationPointEntityId IS OLD.FaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity'
+ ON 'SubMechanismIllustrationPointStochastEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeSubmechanismIllustrationPointEntity_RemoveSubmechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON FaultTreeSubmechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubmechanismIllustrationPointEntity
+ WHERE OLD.SubmechanismIllustrationPointEntityId IS NOT NULL
+ AND SubmechanismIllustrationPointEntityId IS OLD.SubmechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity'
+ ON 'MacroStabilityInwardsCalculationOutputEntity' ('MacroStabilityInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityCharacteristicPointEntity_SurfaceLineEntity'
+ ON 'MacroStabilityInwardsCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity'
+ ON 'MacroStabilityInwardsSoilLayerOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'MacroStabilityInwardsStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+CREATE TRIGGER [TR_BeforeInsertMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE INSERT
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_BeforeUpdateMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE UPDATE
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_AfterDeleteMacroStabilityInwardsSoilProfileTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity]
+ AFTER DELETE
+ ON MacroStabilityInwardsSoilProfileTwoDEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM MacroStabilityInwardsSoilLayerTwoDEntity
+ WHERE OLD.MacroStabilityInwardsSoilLayerTwoDEntity IS NOT NULL
+ AND MacroStabilityInwardsSoilLayerTwoDEntity IS OLD.MacroStabilityInwardsSoilLayerTwoDEntity;
+END;
+;
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure18.1.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,2825 @@
+/* ---------------------------------------------------- */
+/* Generated by Enterprise Architect Version 12.0 */
+/* Created On : 10-Sep-2018 10:04:29 */
+/* DBMS : SQLite */
+/* ---------------------------------------------------- */
+
+/* Drop Tables */
+
+DROP TABLE IF EXISTS 'VersionEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ProjectEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'AssessmentSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'CalculationGroupEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilLayerEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StochasticSoilModelEntity'
+;
+
+DROP TABLE IF EXISTS 'SurfaceLineEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'TechnicalInnovationSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaterPressureAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MicrostabilitySectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DikeProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ForeshoreProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'IllustrationPointResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeSubmechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsPreconsolidationStressEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationCalculationEntity'
+;
+
+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'
+(
+ 'VersionId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Version' VARCHAR (20) NOT NULL,
+ 'Timestamp' DATETIME NOT NULL,
+ 'FingerPrint' BLOB NOT NULL
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+(
+ 'GrassCoverErosionInwardsDikeHeightOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'DikeHeight' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'ProjectEntity'
+(
+ 'ProjectEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Description' VARCHAR (260)
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsFailureMechanismMetaEntity'
+(
+ 'MacroStabilityInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'AssessmentSectionEntity'
+(
+ 'AssessmentSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ProjectEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationCalculationCollectionEntity1Id' INTEGER NOT NULL, -- Represents the design water level factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity2Id' INTEGER NOT NULL, -- Represents the design water level signaling norm
+ 'HydraulicLocationCalculationCollectionEntity3Id' INTEGER NOT NULL, -- Represents the design water level lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity4Id' INTEGER NOT NULL, -- Represents the design water level factorized lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity5Id' INTEGER NOT NULL, -- Represents the wave height factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity6Id' INTEGER NOT NULL, -- Represents the wave height signaling norm
+ 'HydraulicLocationCalculationCollectionEntity7Id' INTEGER NOT NULL, -- Represents the wave height lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity8Id' INTEGER NOT NULL, -- Represents the wave height factorized lower limit norm
+ 'Id' TEXT,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'LowerLimitNorm' REAL NOT NULL,
+ 'SignalingNorm' REAL NOT NULL,
+ 'NormativeNormType' TINYINT (1) NOT NULL, -- EnumType: 1 = LowerLimit, 2 = Signaling
+ 'HydraulicDatabaseVersion' TEXT,
+ 'HydraulicDatabaseLocation' TEXT,
+ 'Composition' TINYINT (1) NOT NULL, -- Enum: 1 = Dike, 2 = Dune, 3 = DikeAndDune
+ 'ReferenceLinePointXml' TEXT,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity1' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity1Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity2' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity2Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity3' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity3Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity4' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity4Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity5' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity5Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity6' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity6Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity7' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity7Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity8' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity8Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity1Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity1Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity2Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity2Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity3Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity3Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity4Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity4Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity5Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity5Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity6Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity6Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity7Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity7Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity8Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity8Id')
+)
+;
+
+CREATE TABLE 'MacroStabilityOutwardsFailureMechanismMetaEntity'
+(
+ 'MacroStabilityOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismSectionEntity'
+(
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'FailureMechanismSectionPointXml' TEXT NOT NULL,
+ CONSTRAINT 'FK_FailureMechanismSectionEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismEntity'
+(
+ 'FailureMechanismEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'CalculationGroupEntityId' INTEGER,
+ 'FailureMechanismType' SMALLINT NOT NULL, -- Enum: 1 = Piping, 2 = Macrostabiliteit binnenwaarts, 3= Golfklappen op asfaltbekleding, 4= Grasbekleding erosie buitentalud, 5 = Grasbekleding afschuiven buitentalud, 6 = Grasbekleding erosie kruin en binnentalud, 7 = Stabiliteit steenzetting, 8 = Duinafslag, 9 = Hoogte kunstwerk, 10 = Betrouwbaarheid sluiten kunstwerk, 11 = Piping bij kunstwerk, 12 = Sterkte en stabiliteit puntconstructires, 13 = Macrostabiliteit buitenwaarts, 14 = Microstabiliteit, 15 = Wateroverdruk bij asfaltbekleding, 16 = Grasbekleding afschuiven binnentalud, 17 = Sterkte en stabiliteit langsconstructires, 18 = Technische innovaties
+ 'IsRelevant' TINYINT (1) NOT NULL, -- true or false
+ 'FailureMechanismSectionCollectionSourcePath' TEXT,
+ 'InputComments' TEXT,
+ 'OutputComments' TEXT,
+ 'NotRelevantComments' TEXT,
+ CONSTRAINT 'FK_FailureMechanismEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FailureMechanismEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UI_AssessmentSectionEntityId_FailureMechanismType' UNIQUE ('AssessmentSectionEntityId','FailureMechanismType')
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresCalculationEntity'
+(
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'StabilityPointStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL NOT NULL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL NOT NULL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'LoadSchematizationType' TINYINT (1) NOT NULL, -- Enum: 1 = Linear, 2 = Quadratic
+ 'VolumicWeightWater' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity' FOREIGN KEY ('StabilityPointStructureEntityId') REFERENCES 'StabilityPointStructureEntity' ('StabilityPointStructureEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresFailureMechanismMetaEntity'
+(
+ 'ClosingStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N2A' INT (4) NOT NULL,
+ 'ClosingStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingFailureMechanismMetaEntity'
+(
+ 'PipingFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'WaterVolumetricWeight' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_PipingFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverFailureMechanismMetaEntity'
+(
+ 'StabilityStoneCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'CalculationGroupEntity'
+(
+ 'CalculationGroupEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentCalculationGroupEntityId' INTEGER,
+ 'Name' VARCHAR (260),
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_CalculationGroupEntity_CalculationGroupEntity' FOREIGN KEY ('ParentCalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationEntity'
+(
+ 'HydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_HydraulicLocationEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationEntity'
+(
+ 'PipingCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'PipingStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'EntryPointL' REAL,
+ 'ExitPointL' REAL,
+ 'PhreaticLevelExitMean' REAL,
+ 'PhreaticLevelExitStandardDeviation' REAL,
+ 'DampingFactorExitMean' REAL,
+ 'DampingFactorExitStandardDeviation' REAL,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_PipingCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_PipingStochasticSoilProfileEntity' FOREIGN KEY ('PipingStochasticSoilProfileEntityId') REFERENCES 'PipingStochasticSoilProfileEntity' ('PipingStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ 'DikeProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresFailureMechanismMetaEntity'
+(
+ 'StabilityPointStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'StabilityPointStructureCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsCalculationEntity'
+(
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'DikeProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'Orientation' REAL,
+ 'CriticalFlowRateMean' REAL,
+ 'CriticalFlowRateStandardDeviation' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'DikeHeightCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'DikeHeight' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'OvertoppingRateCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'ShouldDikeHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingRateIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingOutputIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity' FOREIGN KEY ('DikeProfileEntityId') REFERENCES 'DikeProfileEntity' ('DikeProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionFailureMechanismMetaEntity'
+(
+ '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
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationCalculationCollectionEntity1Id' INTEGER NOT NULL, -- Represents the design water level failure mechanism specific factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity2Id' INTEGER NOT NULL, -- Represents the design water level failure mechanism specific signaling norm
+ 'HydraulicLocationCalculationCollectionEntity3Id' INTEGER NOT NULL, -- Represents the design water level failure mechanism specific lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity4Id' INTEGER NOT NULL, -- Represents the wave height failure mechanism specific factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity5Id' INTEGER NOT NULL, -- Represents the wave height failure mechanism specific signaling norm
+ 'HydraulicLocationCalculationCollectionEntity6Id' INTEGER NOT NULL, -- Represents the wave height failure mechanism specific lower limit norm
+ 'N' REAL NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity1' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity1Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity2' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity2Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity3' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity3Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity4' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity4Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity5' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity5Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity6' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity6Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity1Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity1Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity2Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity2Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity3Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity3Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity4Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity4Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity5Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity5Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity6Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity6Id')
+)
+;
+
+CREATE TABLE 'PipingSoilLayerEntity'
+(
+ 'PipingSoilLayerEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelDeviation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'DiameterD70Mean' REAL,
+ 'DiameterD70CoefficientOfVariation' REAL,
+ 'PermeabilityMean' REAL,
+ 'PermeabilityCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingSoilLayerEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresFailureMechanismMetaEntity'
+(
+ 'HeightStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ 'HeightStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSoilProfileEntity'
+(
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Bottom' REAL,
+ 'Name' TEXT NOT NULL,
+ 'SourceType' TINYINT (1) NOT NULL -- Enum: 1 = SoilProfile1D, 2 = SoilProfile2D
+)
+;
+
+CREATE TABLE 'PipingStochasticSoilProfileEntity'
+(
+ 'PipingStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochasticSoilModelEntity'
+(
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'StochasticSoilModelSegmentPointXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StochasticSoilModelEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_StochasticSoilModelEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'SurfaceLineEntity'
+(
+ 'SurfaceLineEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'ReferenceLineIntersectionX' REAL,
+ 'ReferenceLineIntersectionY' REAL,
+ 'PointsXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SurfaceLineEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_SurfaceLineEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'PipingCharacteristicPointEntity'
+(
+ 'PipingCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' TINYINT (1) NOT NULL, -- Enum: 1 = DikeToeAtRiver, 2 = DikeToeAtPolder, 3 = DitchDikeSide, 4 = BottomDitchDikeSide, 5 = BottomDitchPolderSide, 6 = DitchPolderSide
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_SurfaceLinePointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationOutputEntity'
+(
+ 'PipingCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveZValue' REAL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftZValue' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerZValue' REAL,
+ 'UpliftEffectiveStress' REAL,
+ 'HeaveGradient' REAL,
+ 'SellmeijerCreepCoefficient' REAL,
+ 'SellmeijerCriticalFall' REAL,
+ 'SellmeijerReducedFall' REAL,
+ CONSTRAINT 'FK_PipingCalculationOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingStructureFailureMechanismMetaEntity'
+(
+ 'PipingStructureFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_PipingStructureFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSectionResultEntity'
+(
+ 'PipingSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_PipingSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsSectionResultEntity'
+(
+ 'GrassCoverErosionInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresSectionResultEntity'
+(
+ 'HeightStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'HeightStructuresCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None 2 = ProbabilityNegligible 3 = Probability 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+(
+ 'StrengthStabilityLengthwiseConstructionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TechnicalInnovationSectionResultEntity'
+(
+ 'TechnicalInnovationSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaterPressureAsphaltCoverSectionResultEntity'
+(
+ 'WaterPressureAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresSectionResultEntity'
+(
+ 'ClosingStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'ClosingStructuresCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsSectionResultEntity'
+(
+ 'GrassCoverErosionOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffInwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffOutwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSectionResultEntity'
+(
+ 'MacroStabilityInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityOutwardsSectionResultEntity'
+(
+ 'MacroStabilityOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'DetailedAssessmentProbability' REAL,
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = Sufficient, 5 = Insufficient, 6 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_MacroStabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+(
+ 'WaveImpactAsphaltCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'DeltaL' REAL NOT NULL,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverSectionResultEntity'
+(
+ 'WaveImpactAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MicrostabilitySectionResultEntity'
+(
+ 'MicrostabilitySectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingStructureSectionResultEntity'
+(
+ 'PipingStructureSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionSectionResultEntity'
+(
+ 'DuneErosionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverSectionResultEntity'
+(
+ 'StabilityStoneCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresSectionResultEntity'
+(
+ 'StabilityPointStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DikeProfileEntity'
+(
+ 'DikeProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall 2 = Caisson 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ForeshoreXml' TEXT NOT NULL,
+ 'DikeGeometryXml' TEXT NOT NULL,
+ 'DikeHeight' REAL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DikeProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_DikeProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOutputEntity'
+(
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'IsOvertoppingDominant' TINYINT (1) NOT NULL, -- true or false
+ 'WaveHeight' REAL,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsCalculationEntity' UNIQUE ('GrassCoverErosionInwardsCalculationEntityId')
+)
+;
+
+CREATE TABLE 'ForeshoreProfileEntity'
+(
+ 'ForeshoreProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'GeometryXml' TEXT NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_ForeshoreProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_ForeshoreProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsCalculationEntity'
+(
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ 'CategoryType' TINYINT (1) NOT NULL, -- Enum: 1 = FactorizedSignalingNorm, 2 = SignalingNorm, 3 = LowerLimitNorm, 4 = FactorizedLowerLimitNorm
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsOutputEntity'
+(
+ 'StabilityStoneCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'OutputType' TINYINT (1) NOT NULL, -- Enum: 1 = Column, 2 = Block
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity' FOREIGN KEY ('StabilityStoneCoverWaveConditionsCalculationEntityId') REFERENCES 'StabilityStoneCoverWaveConditionsCalculationEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ 'CategoryType' TINYINT (1) NOT NULL, -- Enum: 1 = FactorizedSignalingNorm, 2 = SignalingNorm, 3 = LowerLimitNorm, 4 = FactorizedLowerLimitNorm
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity' FOREIGN KEY ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') REFERENCES 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ 'CategoryType' TINYINT (1) NOT NULL, -- Enum: 1 = MechanismSpecificFactorizedSignalingNorm, 2 = MechanismSpecificSignalingNorm, 3 = MechanismSpecificLowerLimitNorm, 4 = LowerLimitNorm, 5 = FactorizedLowerLimitNorm
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') REFERENCES 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresOutputEntity'
+(
+ 'HeightStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HeightStructuresCalculationEntity' UNIQUE ('HeightStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HeightStructureEntity'
+(
+ 'HeightStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ CONSTRAINT 'FK_HeightStructure_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'HeightStructuresCalculationEntity'
+(
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'HeightStructureEntityId' INTEGER,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'StormDurationMean' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'DeviationWaveDirection' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HeightStructureEntity' FOREIGN KEY ('HeightStructureEntityId') REFERENCES 'HeightStructureEntity' ('HeightStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructureEntity'
+(
+ 'ClosingStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOpenStructureBeforeFlooding' REAL,
+ 'FailureProbabilityOpenStructure' REAL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ CONSTRAINT 'FK_ClosingStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'ClosingStructuresCalculationEntity'
+(
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'ClosingStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (255),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOpenStructureBeforeFlooding' REAL NOT NULL,
+ 'FailureProbabilityOpenStructure' REAL NOT NULL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL NOT NULL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'DeviationWaveDirection' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ClosingStructureEntity' FOREIGN KEY ('ClosingStructureEntityId') REFERENCES 'ClosingStructureEntity' ('ClosingStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresOutputEntity'
+(
+ 'ClosingStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'U_ClosingStructuresCalculationEntity' UNIQUE ('ClosingStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'StabilityPointStructureEntity'
+(
+ 'StabilityPointStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = LowSill, 2 = FloodedCulvert
+ CONSTRAINT 'FK_StabilityPointStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresOutputEntity'
+(
+ 'StabilityPointStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_StabilityPointStructuresCalculationEntity' UNIQUE ('StabilityPointStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HydraulicLocationOutputEntity'
+(
+ 'HydraulicLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationCalculationEntityId' INTEGER,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER,
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_HydraulicLocationCalculationEntity' FOREIGN KEY ('HydraulicLocationCalculationEntityId') REFERENCES 'HydraulicLocationCalculationEntity' ('HydraulicLocationCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationEntity'
+(
+ 'DuneLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'CoastalAreaId' INT (4) NOT NULL,
+ 'Offset' REAL,
+ 'Orientation' REAL,
+ 'D50' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DuneLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationCalculationOutputEntity'
+(
+ 'DuneLocationCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'DuneLocationCalculationEntityId' INTEGER NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeriod' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_DuneLocationCalculationOutputEntity_DuneLocationCalculationEntity' FOREIGN KEY ('DuneLocationCalculationEntityId') REFERENCES 'DuneLocationCalculationEntity' ('DuneLocationCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataEntity'
+(
+ 'BackgroundDataEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'IsVisible' TINYINT (1) NOT NULL, -- true or false
+ 'Transparency' REAL NOT NULL,
+ 'BackgroundDataType' TINYINT (1) NOT NULL, -- Enum: 1 = Wmts, 2 = WellKnown
+ CONSTRAINT 'FK_BackgroundDataEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataMetaEntity'
+(
+ 'BackgroundDataMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'BackgroundDataEntityId' INTEGER NOT NULL,
+ 'Key' TEXT NOT NULL,
+ 'Value' TEXT NOT NULL,
+ CONSTRAINT 'FK_BackgroundDataMetaEntity_BackgroundDataEntity' FOREIGN KEY ('BackgroundDataEntityId') REFERENCES 'BackgroundDataEntity' ('BackgroundDataEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_BackgroundDataEntityId_Key' UNIQUE ('BackgroundDataEntityId','Key')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+(
+ 'GrassCoverErosionInwardsOvertoppingRateOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'OvertoppingRate' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'IllustrationPointResultEntity'
+(
+ 'IllustrationPointResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Description' TEXT NOT NULL,
+ 'Value' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochastEntity'
+(
+ 'StochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultSubMechanismIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultSubMechanismIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultSubMechanisIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'CombinationType' TINYINT (1) NOT NULL, -- Enum: 1 = Or, 2 = And
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint' FOREIGN KEY ('ParentFaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointStochastEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('FaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultFaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultFaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelSubMechanismIllustrationPointEntity'
+(
+ 'TopLevelSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelFaultTreeIllustrationPointEntity'
+(
+ 'TopLevelFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointStochastEntity'
+(
+ 'SubMechanismIllustrationPointStochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Realization' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action
+)
+;
+
+CREATE TABLE 'FaultTreeSubmechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeSubMechanismIllustrationPointEntityId' PRIMARY KEY ('SubMechanismIllustrationPointEntityId','FaultTreeIllustrationPointEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationEntity'
+(
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comment' TEXT,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ 'SlipPlaneMinimumDepth' REAL,
+ 'SlipPlaneMinimumLength' REAL,
+ 'MaximumSliceWidth' REAL,
+ 'MoveGrid' TINYINT (1) NOT NULL, -- true or false
+ 'GridDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic, 2 = Manual
+ 'TangentLineDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Specified, 2 = LayerSeparated
+ 'TangentLineZTop' REAL,
+ 'TangentLineZBottom' REAL,
+ 'TangentLineNumber' INT (4) NOT NULL,
+ 'LeftGridXLeft' REAL,
+ 'LeftGridXRight' REAL,
+ 'LeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'LeftGridZTop' REAL,
+ 'LeftGridZBottom' REAL,
+ 'LeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'RightGridXLeft' REAL,
+ 'RightGridXRight' REAL,
+ 'RightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'RightGridZTop' REAL,
+ 'RightGridZBottom' REAL,
+ 'RightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'DikeSoilScenario' TINYINT (1) NOT NULL, -- Enumtype: 1 = ClayDikeOnClay, 2 = SandDikeOnClay, 3 = ClayDikeOnSand, 4 = SandDikeOnSand
+ 'WaterLevelRiverAverage' REAL,
+ 'DrainageConstructionPresent' TINYINT (1) NOT NULL, -- true or false
+ 'DrainageConstructionCoordinateX' REAL,
+ 'DrainageConstructionCoordinateZ' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopRiver' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopPolder' REAL,
+ 'AdjustPhreaticLine3And4ForUplift' TINYINT (1) NOT NULL, -- true or false
+ 'LeakageLengthOutwardsPhreaticLine3' REAL,
+ 'LeakageLengthInwardsPhreaticLine3' REAL,
+ 'LeakageLengthOutwardsPhreaticLine4' REAL,
+ 'LeakageLengthInwardsPhreaticLine4' REAL,
+ 'PiezometricHeadPhreaticLine2Outwards' REAL,
+ 'PiezometricHeadPhreaticLine2Inwards' REAL,
+ 'LocationInputExtremeWaterLevelPolder' REAL,
+ 'LocationInputExtremeUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputExtremePhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'LocationInputExtremePenetrationLength' REAL,
+ 'LocationInputDailyWaterLevelPolder' REAL,
+ 'LocationInputDailyUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputDailyPhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'CreateZones' TINYINT (1) NOT NULL, -- true or false
+ 'ZoningBoundariesDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic 2 = Manual
+ 'ZoneBoundaryLeft' REAL,
+ 'ZoneBoundaryRight' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity' FOREIGN KEY ('MacroStabilityInwardsStochasticSoilProfileEntityId') REFERENCES 'MacroStabilityInwardsStochasticSoilProfileEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationOutputEntity'
+(
+ 'MacroStabilityInwardsCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'FactorOfStability' REAL,
+ 'ZValue' REAL,
+ 'ForbiddenZonesXEntryMin' REAL,
+ 'ForbiddenZonesXEntryMax' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterX' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterY' REAL,
+ 'SlidingCurveLeftSlidingCircleRadius' REAL,
+ 'SlidingCurveLeftSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveLeftSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveLeftSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleCenterX' REAL,
+ 'SlidingCurveRightSlidingCircleCenterY' REAL,
+ 'SlidingCurveRightSlidingCircleRadius' REAL,
+ 'SlidingCurveRightSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveRightSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveNonIteratedHorizontalForce' REAL,
+ 'SlidingCurveIteratedHorizontalForce' REAL,
+ 'SlidingCurveSliceXML' TEXT NOT NULL, -- XML representation of MacroStabilityInwardsSlice
+ 'SlipPlaneLeftGridXLeft' REAL,
+ 'SlipPlaneLeftGridXRight' REAL,
+ 'SlipPlaneLeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneLeftGridZTop' REAL,
+ 'SlipPlaneLeftGridZBottom' REAL,
+ 'SlipPlaneLeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridXLeft' REAL,
+ 'SlipPlaneRightGridXRight' REAL,
+ 'SlipPlaneRightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridZTop' REAL,
+ 'SlipPlaneRightGridZBottom' REAL,
+ 'SlipPlaneRightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneTangentLinesXml' TEXT NOT NULL, -- XML representation of TangentLines
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity' FOREIGN KEY ('MacroStabilityInwardsCalculationEntityId') REFERENCES 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCharacteristicPointEntity'
+(
+ 'MacroStabilityInwardsCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' SMALLINT NOT NULL, -- Enumtype: 1 = SurfaceLevelOutside 2 = DikeTopAtRiver 3 = DikeToeAtRiver 4 = DikeTopAtPolder 5 = ShoulderBaseInside 6 = ShoulderTopInside 7 = DikeToeAtPolder 8 = DitchDikeSide 9 = BottomDitchDikeSide 10 = BottomDitchPolderSide 11 = DitchPolderSide 12 = SurfaceLevelInside
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCharacteristicPointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerOneDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileOneDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Bottom' REAL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentMacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'OuterRingXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('ParentMacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsStochasticSoilProfileEntity'
+(
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsPreconsolidationStressEntity'
+(
+ 'MacroStabilityInwardsPreconsolidationStressEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'CoordinateX' REAL NOT NULL,
+ 'CoordinateZ' REAL NOT NULL,
+ 'PreconsolidationStressMean' REAL,
+ 'PreconsolidationStressCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsPreconsolidationStressEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity' PRIMARY KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId','MacroStabilityInwardsSoilLayerTwoDEntityId'),
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationCalculationEntity'
+(
+ 'HydraulicLocationCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationCalculationCollectionEntityId' INTEGER NOT NULL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- True or false
+ CONSTRAINT 'FK_HydraulicLocationCalculationEntity_HydraulicLocationCalculationCollectionEntity' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntityId') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HydraulicLocationCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationCalculationCollectionEntity'
+(
+ 'HydraulicLocationCalculationCollectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT
+)
+;
+
+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'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsDikeHeightOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsDikeHeightOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'MacroStabilityInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity1'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity1Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity2'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity2Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity3'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity3Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity4'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity4Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity5'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity5Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity6'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity6Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity7'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity7Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity8'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity8Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_ProjectEntity'
+ ON 'AssessmentSectionEntity' ('ProjectEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteAssessmentSectionEntity_RemoveHydraulicLocationCalculationCollectionEntities]
+ AFTER DELETE
+ ON AssessmentSectionEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM HydraulicLocationCalculationCollectionEntity
+ WHERE HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity1Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity2Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity3Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity4Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity5Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity6Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity7Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity8Id;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityOutwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'MacroStabilityOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismSectionEntity_FailureMechanismEntity'
+ ON 'FailureMechanismSectionEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_AssessmentSectionEntity'
+ ON 'FailureMechanismEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_CalculationGroupEntity'
+ ON 'FailureMechanismEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'ClosingStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityStoneCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_CalculationGroupEntity_CalculationGroupEntity'
+ ON 'CalculationGroupEntity' ('ParentCalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationEntity_AssessmentSectionEntity'
+ ON 'HydraulicLocationEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_PipingStochasticSoilProfileEntity'
+ ON 'PipingCalculationEntity' ('PipingStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_SurfaceLineEntity'
+ ON 'PipingCalculationEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_HydraulicLocationEntity'
+ ON 'PipingCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_CalculationGroupEntity'
+ ON 'PipingCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('DikeProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity'
+ 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)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity1'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity1Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity2'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity2Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity3'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity3Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity4'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity4Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity5'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity5Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity6'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity6Id' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionOutwardsFailureMechanismMetaEntity_RemoveHydraulicLocationCalculationCollectionEntities]
+ AFTER DELETE
+ ON GrassCoverErosionOutwardsFailureMechanismMetaEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM HydraulicLocationCalculationCollectionEntity
+ WHERE HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity1Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity2Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity3Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity4Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity5Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity6Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity7Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity8Id;
+END;
+;
+
+CREATE INDEX 'IXFK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'HeightStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_SoilProfileEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('PipingSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilModelEntity_FailureMechanismEntity'
+ ON 'StochasticSoilModelEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLineEntity_FailureMechanismEntity'
+ ON 'SurfaceLineEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLinePointEntity_SurfaceLineEntity'
+ ON 'PipingCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationOutputEntity_PipingCalculationEntity'
+ ON 'PipingCalculationOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingStructureFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'HeightStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresSectionResultEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StrengthStabilityLengthwiseConstructionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'TechnicalInnovationSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaterPressureAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacroStabilityInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacroStabilityOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'WaveImpactAsphaltCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaveImpactAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MicrostabilitySectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingStructureSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'DuneErosionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityStoneCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DikeProfileEntity_FailureMechanismEntity'
+ ON 'DikeProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_ForeshoreProfileEntity_FailureMechanismEntity'
+ ON 'ForeshoreProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity'
+ ON 'StabilityStoneCoverWaveConditionsOutputEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsOutputEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsOutputEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresOutputEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHeightStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON HeightStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HeightStructure_FailureMechanismEntity'
+ ON 'HeightStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'HeightStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'HeightStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HeightStructureEntity'
+ ON 'HeightStructuresCalculationEntity' ('HeightStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'HeightStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructureEntity_FailureMechanismEntity'
+ ON 'ClosingStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'ClosingStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ClosingStructureEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ClosingStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'ClosingStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresOutputEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteClosingStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON ClosingStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructureEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresOutputEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteStabilityPointStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON StabilityPointStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'HydraulicLocationOutputEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_HydraulicLocationCalculationEntity'
+ ON 'HydraulicLocationOutputEntity' ('HydraulicLocationCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHydraulicLocationOutputEntity_RemoveGeneralResultSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON HydraulicLocationOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultSubMechanismIllustrationPointEntity
+ WHERE OLD.GeneralResultSubMechanismIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultSubMechanismIllustrationPointEntityId IS OLD.GeneralResultSubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_DuneLocationEntity_FailureMechanismEntity'
+ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneLocationCalculationOutputEntity_DuneLocationCalculationEntity'
+ ON 'DuneLocationCalculationOutputEntity' ('DuneLocationCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity'
+ ON 'BackgroundDataEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataMetaEntity_BackgroundDataEntity'
+ ON 'BackgroundDataMetaEntity' ('BackgroundDataEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOvertoppingRateOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOvertoppingRateOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity'
+ ON 'IllustrationPointResultEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultSubMechanismIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultSubMechanismIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointEntity' ('ParentFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON FaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultFaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelSubMechanismIllustrationPointEntity_RemoveSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelSubMechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubMechanismIllustrationPointEntity
+ WHERE OLD.SubMechanismIllustrationPointEntityId IS NOT NULL
+ AND SubMechanismIllustrationPointEntityId IS OLD.SubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelFaultTreeIllustrationPointEntity_RemoveFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelFaultTreeIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM FaultTreeIllustrationPointEntity
+ WHERE OLD.FaultTreeIllustrationPointEntityId IS NOT NULL
+ AND FaultTreeIllustrationPointEntityId IS OLD.FaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity'
+ ON 'SubMechanismIllustrationPointStochastEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeSubmechanismIllustrationPointEntity_RemoveSubmechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON FaultTreeSubmechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubmechanismIllustrationPointEntity
+ WHERE OLD.SubmechanismIllustrationPointEntityId IS NOT NULL
+ AND SubmechanismIllustrationPointEntityId IS OLD.SubmechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity'
+ ON 'MacroStabilityInwardsCalculationOutputEntity' ('MacroStabilityInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityCharacteristicPointEntity_SurfaceLineEntity'
+ ON 'MacroStabilityInwardsCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity'
+ ON 'MacroStabilityInwardsSoilLayerOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'MacroStabilityInwardsStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+CREATE TRIGGER [TR_BeforeInsertMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE INSERT
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_BeforeUpdateMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE UPDATE
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_AfterDeleteMacroStabilityInwardsSoilProfileTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity]
+ AFTER DELETE
+ ON MacroStabilityInwardsSoilProfileTwoDEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM MacroStabilityInwardsSoilLayerTwoDEntity
+ WHERE OLD.MacroStabilityInwardsSoilLayerTwoDEntity IS NOT NULL
+ AND MacroStabilityInwardsSoilLayerTwoDEntity IS OLD.MacroStabilityInwardsSoilLayerTwoDEntity;
+END;
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationCalculationEntity_HydraulicLocationCalculationCollectionEntity'
+ ON 'HydraulicLocationCalculationEntity' ('HydraulicLocationCalculationCollectionEntityId' ASC)
+;
+
+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: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure19.1.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure19.1.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure19.1.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,2850 @@
+/* ---------------------------------------------------- */
+/* Generated by Enterprise Architect Version 12.0 */
+/* Created On : 15-jan-2019 14:14:43 */
+/* DBMS : SQLite */
+/* ---------------------------------------------------- */
+
+/* Drop Tables */
+
+DROP TABLE IF EXISTS 'VersionEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ProjectEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'AssessmentSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismSectionEntity'
+;
+
+DROP TABLE IF EXISTS 'FailureMechanismEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'CalculationGroupEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilLayerEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StochasticSoilModelEntity'
+;
+
+DROP TABLE IF EXISTS 'SurfaceLineEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'TechnicalInnovationSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaterPressureAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverSlipOffOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityOutwardsSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'MicrostabilitySectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'PipingStructureSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneErosionSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresSectionResultEntity'
+;
+
+DROP TABLE IF EXISTS 'DikeProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'ForeshoreProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityStoneCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'HeightStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'ClosingStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructureEntity'
+;
+
+DROP TABLE IF EXISTS 'StabilityPointStructuresOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataEntity'
+;
+
+DROP TABLE IF EXISTS 'BackgroundDataMetaEntity'
+;
+
+DROP TABLE IF EXISTS 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'IllustrationPointResultEntity'
+;
+
+DROP TABLE IF EXISTS 'StochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelSubMechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'TopLevelFaultTreeIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'SubMechanismIllustrationPointStochastEntity'
+;
+
+DROP TABLE IF EXISTS 'FaultTreeSubmechanismIllustrationPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCalculationOutputEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsCharacteristicPointEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileOneDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilLayerTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsStochasticSoilProfileEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsPreconsolidationStressEntity'
+;
+
+DROP TABLE IF EXISTS 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicLocationCalculationCollectionEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationCalculationCollectionEntity'
+;
+
+DROP TABLE IF EXISTS 'DuneLocationCalculationEntity'
+;
+
+DROP TABLE IF EXISTS 'HydraulicBoundaryDatabaseEntity'
+;
+
+/* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */
+
+CREATE TABLE 'VersionEntity'
+(
+ 'VersionId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Version' VARCHAR (20) NOT NULL,
+ 'Timestamp' DATETIME NOT NULL,
+ 'FingerPrint' BLOB NOT NULL
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsDikeHeightOutputEntity'
+(
+ 'GrassCoverErosionInwardsDikeHeightOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'DikeHeight' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'ProjectEntity'
+(
+ 'ProjectEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Description' VARCHAR (260)
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsFailureMechanismMetaEntity'
+(
+ 'MacroStabilityInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'AssessmentSectionEntity'
+(
+ 'AssessmentSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ProjectEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationCalculationCollectionEntity1Id' INTEGER NOT NULL, -- Represents the design water level factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity2Id' INTEGER NOT NULL, -- Represents the design water level signaling norm
+ 'HydraulicLocationCalculationCollectionEntity3Id' INTEGER NOT NULL, -- Represents the design water level lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity4Id' INTEGER NOT NULL, -- Represents the design water level factorized lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity5Id' INTEGER NOT NULL, -- Represents the wave height factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity6Id' INTEGER NOT NULL, -- Represents the wave height signaling norm
+ 'HydraulicLocationCalculationCollectionEntity7Id' INTEGER NOT NULL, -- Represents the wave height lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity8Id' INTEGER NOT NULL, -- Represents the wave height factorized lower limit norm
+ 'Id' TEXT,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'LowerLimitNorm' REAL NOT NULL,
+ 'SignalingNorm' REAL NOT NULL,
+ 'NormativeNormType' TINYINT (1) NOT NULL, -- EnumType: 1 = LowerLimit, 2 = Signaling
+ 'Composition' TINYINT (1) NOT NULL, -- Enum: 1 = Dike, 2 = Dune, 3 = DikeAndDune
+ 'ReferenceLinePointXml' TEXT,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity1' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity1Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity2' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity2Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity3' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity3Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity4' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity4Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity5' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity5Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity6' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity6Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity7' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity7Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity8' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity8Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_AssessmentSectionEntity_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity1Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity1Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity2Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity2Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity3Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity3Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity4Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity4Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity5Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity5Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity6Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity6Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity7Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity7Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity8Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity8Id')
+)
+;
+
+CREATE TABLE 'MacroStabilityOutwardsFailureMechanismMetaEntity'
+(
+ 'MacroStabilityOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismSectionEntity'
+(
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'FailureMechanismSectionPointXml' TEXT NOT NULL,
+ CONSTRAINT 'FK_FailureMechanismSectionEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FailureMechanismEntity'
+(
+ 'FailureMechanismEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'CalculationGroupEntityId' INTEGER,
+ 'FailureMechanismType' SMALLINT NOT NULL, -- Enum: 1 = Piping, 2 = Macrostabiliteit binnenwaarts, 3= Golfklappen op asfaltbekleding, 4= Grasbekleding erosie buitentalud, 5 = Grasbekleding afschuiven buitentalud, 6 = Grasbekleding erosie kruin en binnentalud, 7 = Stabiliteit steenzetting, 8 = Duinafslag, 9 = Hoogte kunstwerk, 10 = Betrouwbaarheid sluiten kunstwerk, 11 = Piping bij kunstwerk, 12 = Sterkte en stabiliteit puntconstructires, 13 = Macrostabiliteit buitenwaarts, 14 = Microstabiliteit, 15 = Wateroverdruk bij asfaltbekleding, 16 = Grasbekleding afschuiven binnentalud, 17 = Sterkte en stabiliteit langsconstructires, 18 = Technische innovaties
+ 'IsRelevant' TINYINT (1) NOT NULL, -- true or false
+ 'FailureMechanismSectionCollectionSourcePath' TEXT,
+ 'InputComments' TEXT,
+ 'OutputComments' TEXT,
+ 'NotRelevantComments' TEXT,
+ CONSTRAINT 'FK_FailureMechanismEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FailureMechanismEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UI_AssessmentSectionEntityId_FailureMechanismType' UNIQUE ('AssessmentSectionEntityId','FailureMechanismType')
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresCalculationEntity'
+(
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'StabilityPointStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL NOT NULL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL NOT NULL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'LoadSchematizationType' TINYINT (1) NOT NULL, -- Enum: 1 = Linear, 2 = Quadratic
+ 'VolumicWeightWater' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity' FOREIGN KEY ('StabilityPointStructureEntityId') REFERENCES 'StabilityPointStructureEntity' ('StabilityPointStructureEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresFailureMechanismMetaEntity'
+(
+ 'ClosingStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N2A' INT (4) NOT NULL,
+ 'ClosingStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingFailureMechanismMetaEntity'
+(
+ 'PipingFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'A' REAL NOT NULL,
+ 'WaterVolumetricWeight' REAL NOT NULL,
+ 'StochasticSoilModelCollectionSourcePath' TEXT,
+ 'SurfaceLineCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_PipingFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverFailureMechanismMetaEntity'
+(
+ 'StabilityStoneCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'CalculationGroupEntity'
+(
+ 'CalculationGroupEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentCalculationGroupEntityId' INTEGER,
+ 'Name' VARCHAR (260),
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_CalculationGroupEntity_CalculationGroupEntity' FOREIGN KEY ('ParentCalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationEntity'
+(
+ 'HydraulicLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_HydraulicLocationEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationEntity'
+(
+ 'PipingCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'PipingStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'EntryPointL' REAL,
+ 'ExitPointL' REAL,
+ 'PhreaticLevelExitMean' REAL,
+ 'PhreaticLevelExitStandardDeviation' REAL,
+ 'DampingFactorExitMean' REAL,
+ 'DampingFactorExitStandardDeviation' REAL,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_PipingCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_PipingStochasticSoilProfileEntity' FOREIGN KEY ('PipingStochasticSoilProfileEntityId') REFERENCES 'PipingStochasticSoilProfileEntity' ('PipingStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionInwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ 'DikeProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresFailureMechanismMetaEntity'
+(
+ 'StabilityPointStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'StabilityPointStructureCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsCalculationEntity'
+(
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'DikeProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'Orientation' REAL,
+ 'CriticalFlowRateMean' REAL,
+ 'CriticalFlowRateStandardDeviation' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'DikeHeightCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'DikeHeight' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'OvertoppingRateCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability
+ 'ShouldDikeHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingRateIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ 'ShouldOvertoppingOutputIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity' FOREIGN KEY ('DikeProfileEntityId') REFERENCES 'DikeProfileEntity' ('DikeProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionFailureMechanismMetaEntity'
+(
+ '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
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsFailureMechanismMetaEntity'
+(
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationCalculationCollectionEntity1Id' INTEGER NOT NULL, -- Represents the design water level failure mechanism specific factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity2Id' INTEGER NOT NULL, -- Represents the design water level failure mechanism specific signaling norm
+ 'HydraulicLocationCalculationCollectionEntity3Id' INTEGER NOT NULL, -- Represents the design water level failure mechanism specific lower limit norm
+ 'HydraulicLocationCalculationCollectionEntity4Id' INTEGER NOT NULL, -- Represents the wave height failure mechanism specific factorized signaling norm
+ 'HydraulicLocationCalculationCollectionEntity5Id' INTEGER NOT NULL, -- Represents the wave height failure mechanism specific signaling norm
+ 'HydraulicLocationCalculationCollectionEntity6Id' INTEGER NOT NULL, -- Represents the wave height failure mechanism specific lower limit norm
+ 'N' REAL NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity1' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity1Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity2' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity2Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity3' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity3Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity4' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity4Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity5' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity5Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity6' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntity6Id') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE No Action ON UPDATE Cascade,
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity1Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity1Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity2Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity2Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity3Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity3Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity4Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity4Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity5Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity5Id'),
+ CONSTRAINT 'U_HydraulicLocationCalculationCollectionEntity6Id' UNIQUE ('HydraulicLocationCalculationCollectionEntity6Id')
+)
+;
+
+CREATE TABLE 'PipingSoilLayerEntity'
+(
+ 'PipingSoilLayerEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelDeviation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'DiameterD70Mean' REAL,
+ 'DiameterD70CoefficientOfVariation' REAL,
+ 'PermeabilityMean' REAL,
+ 'PermeabilityCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingSoilLayerEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresFailureMechanismMetaEntity'
+(
+ 'HeightStructuresFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ 'HeightStructureCollectionSourcePath' TEXT,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ CONSTRAINT 'FK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSoilProfileEntity'
+(
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Bottom' REAL,
+ 'Name' TEXT NOT NULL,
+ 'SourceType' TINYINT (1) NOT NULL -- Enum: 1 = SoilProfile1D, 2 = SoilProfile2D
+)
+;
+
+CREATE TABLE 'PipingStochasticSoilProfileEntity'
+(
+ 'PipingStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingSoilProfileEntityId' INTEGER NOT NULL,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_SoilProfileEntity' FOREIGN KEY ('PipingSoilProfileEntityId') REFERENCES 'PipingSoilProfileEntity' ('PipingSoilProfileEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochasticSoilModelEntity'
+(
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'StochasticSoilModelSegmentPointXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_StochasticSoilModelEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_StochasticSoilModelEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'SurfaceLineEntity'
+(
+ 'SurfaceLineEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'ReferenceLineIntersectionX' REAL,
+ 'ReferenceLineIntersectionY' REAL,
+ 'PointsXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SurfaceLineEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_SurfaceLineEntity_NameFailureMechanismEntityId' UNIQUE ('Name','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'PipingCharacteristicPointEntity'
+(
+ 'PipingCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' TINYINT (1) NOT NULL, -- Enum: 1 = DikeToeAtRiver, 2 = DikeToeAtPolder, 3 = DitchDikeSide, 4 = BottomDitchDikeSide, 5 = BottomDitchPolderSide, 6 = DitchPolderSide
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_SurfaceLinePointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingCalculationOutputEntity'
+(
+ 'PipingCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'PipingCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'HeaveFactorOfSafety' REAL,
+ 'HeaveZValue' REAL,
+ 'UpliftFactorOfSafety' REAL,
+ 'UpliftZValue' REAL,
+ 'SellmeijerFactorOfSafety' REAL,
+ 'SellmeijerZValue' REAL,
+ 'UpliftEffectiveStress' REAL,
+ 'HeaveGradient' REAL,
+ 'SellmeijerCreepCoefficient' REAL,
+ 'SellmeijerCriticalFall' REAL,
+ 'SellmeijerReducedFall' REAL,
+ CONSTRAINT 'FK_PipingCalculationOutputEntity_PipingCalculationEntity' FOREIGN KEY ('PipingCalculationEntityId') REFERENCES 'PipingCalculationEntity' ('PipingCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_PipingCalculationEntity' UNIQUE ('PipingCalculationEntityId')
+)
+;
+
+CREATE TABLE 'PipingStructureFailureMechanismMetaEntity'
+(
+ 'PipingStructureFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'N' REAL NOT NULL,
+ CONSTRAINT 'FK_PipingStructureFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingSectionResultEntity'
+(
+ 'PipingSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_PipingSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsSectionResultEntity'
+(
+ 'GrassCoverErosionInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresSectionResultEntity'
+(
+ 'HeightStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'HeightStructuresCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None 2 = ProbabilityNegligible 3 = Probability 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StrengthStabilityLengthwiseConstructionSectionResultEntity'
+(
+ 'StrengthStabilityLengthwiseConstructionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TechnicalInnovationSectionResultEntity'
+(
+ 'TechnicalInnovationSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaterPressureAsphaltCoverSectionResultEntity'
+(
+ 'WaterPressureAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresSectionResultEntity'
+(
+ 'ClosingStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'ClosingStructuresCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsSectionResultEntity'
+(
+ 'GrassCoverErosionOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Detailed result Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffInwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverSlipOffOutwardsSectionResultEntity'
+(
+ 'GrassCoverSlipOffOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSectionResultEntity'
+(
+ 'MacroStabilityInwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityOutwardsSectionResultEntity'
+(
+ 'MacroStabilityOutwardsSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'DetailedAssessmentProbability' REAL,
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = Sufficient, 5 = Insufficient, 6 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_MacroStabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverFailureMechanismMetaEntity'
+(
+ 'WaveImpactAsphaltCoverFailureMechanismMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileCollectionSourcePath' TEXT,
+ 'DeltaL' REAL NOT NULL,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverSectionResultEntity'
+(
+ 'WaveImpactAsphaltCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = ProbabilityNegligible, 4 = AssessFurther
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MicrostabilitySectionResultEntity'
+(
+ 'MicrostabilitySectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'PipingStructureSectionResultEntity'
+(
+ 'PipingStructureSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = NotAssessed, 2 = Sufficient, 3 = NoVerdict
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Sufficient, 4 = Insufficient, 5 = NotAssessed
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Iv, 4 = IIv, 5 = Vv, 6 = VIIv
+ CONSTRAINT 'FK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneErosionSectionResultEntity'
+(
+ 'DuneErosionSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverSectionResultEntity'
+(
+ 'StabilityStoneCoverSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResultForFactorizedSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForSignalingNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForMechanismSpecificLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'DetailedAssessmentResultForFactorizedLowerLimitNorm' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Sufficient, 3 = Insufficient, 4 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = Iv, 3 = IIv, 4 = IIIv, 5 = IVv, 6 = Vv, 7 = VIv, 8 = VIIv
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyCategoryGroup' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable 3 = Iv, 4 = IIv, 5 = IIIv, 6 = IVv, 7 = Vv, 8 = VIv, 9 = VIIv
+ CONSTRAINT 'FK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresSectionResultEntity'
+(
+ 'StabilityPointStructuresSectionResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismSectionEntityId' INTEGER NOT NULL,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER,
+ 'SimpleAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = NotApplicable, 3 = Applicable
+ 'DetailedAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = Probability, 2 = NotAssessed
+ 'TailorMadeAssessmentResult' TINYINT (1) NOT NULL, -- Enum: 1 = None, 2 = ProbabilityNegligible, 3 = Probability, 4 = NotAssessed
+ 'TailorMadeAssessmentProbability' REAL,
+ 'UseManualAssembly' TINYINT (1) NOT NULL, -- true or false
+ 'ManualAssemblyProbability' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity' FOREIGN KEY ('FailureMechanismSectionEntityId') REFERENCES 'FailureMechanismSectionEntity' ('FailureMechanismSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DikeProfileEntity'
+(
+ 'DikeProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall 2 = Caisson 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ForeshoreXml' TEXT NOT NULL,
+ 'DikeGeometryXml' TEXT NOT NULL,
+ 'DikeHeight' REAL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DikeProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_DikeProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOutputEntity'
+(
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'IsOvertoppingDominant' TINYINT (1) NOT NULL, -- true or false
+ 'WaveHeight' REAL,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity' FOREIGN KEY ('GrassCoverErosionInwardsCalculationEntityId') REFERENCES 'GrassCoverErosionInwardsCalculationEntity' ('GrassCoverErosionInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsCalculationEntity' UNIQUE ('GrassCoverErosionInwardsCalculationEntityId')
+)
+;
+
+CREATE TABLE 'ForeshoreProfileEntity'
+(
+ 'ForeshoreProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Orientation' REAL,
+ 'BreakWaterType' TINYINT (1), -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'GeometryXml' TEXT NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'X0' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_ForeshoreProfileEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'UQ_ForeshoreProfileEntity_IdFailureMechanismEntityId' UNIQUE ('Id','FailureMechanismEntityId')
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsCalculationEntity'
+(
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ 'CategoryType' TINYINT (1) NOT NULL, -- Enum: 1 = FactorizedSignalingNorm, 2 = SignalingNorm, 3 = LowerLimitNorm, 4 = FactorizedLowerLimitNorm
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StabilityStoneCoverWaveConditionsOutputEntity'
+(
+ 'StabilityStoneCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityStoneCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'OutputType' TINYINT (1) NOT NULL, -- Enum: 1 = Column, 2 = Block
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity' FOREIGN KEY ('StabilityStoneCoverWaveConditionsCalculationEntityId') REFERENCES 'StabilityStoneCoverWaveConditionsCalculationEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ 'CategoryType' TINYINT (1) NOT NULL, -- Enum: 1 = FactorizedSignalingNorm, 2 = SignalingNorm, 3 = LowerLimitNorm, 4 = FactorizedLowerLimitNorm
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'WaveImpactAsphaltCoverWaveConditionsOutputEntity'
+(
+ 'WaveImpactAsphaltCoverWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity' FOREIGN KEY ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') REFERENCES 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'UpperBoundaryRevetment' REAL,
+ 'LowerBoundaryRevetment' REAL,
+ 'UpperBoundaryWaterLevels' REAL,
+ 'LowerBoundaryWaterLevels' REAL,
+ 'StepSize' TINYINT (1) NOT NULL, -- Enum: 1 = 0.5, 2 = 1.0, 3 = 2.0
+ 'CategoryType' TINYINT (1) NOT NULL, -- Enum: 1 = MechanismSpecificFactorizedSignalingNorm, 2 = MechanismSpecificSignalingNorm, 3 = MechanismSpecificLowerLimitNorm, 4 = LowerLimitNorm, 5 = FactorizedLowerLimitNorm
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GrassCoverErosionOutwardsWaveConditionsOutputEntity'
+(
+ 'GrassCoverErosionOutwardsWaveConditionsOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeakPeriod' REAL,
+ 'WaveAngle' REAL,
+ 'WaveDirection' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity' FOREIGN KEY ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') REFERENCES 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HeightStructuresOutputEntity'
+(
+ 'HeightStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity' FOREIGN KEY ('HeightStructuresCalculationEntityId') REFERENCES 'HeightStructuresCalculationEntity' ('HeightStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_HeightStructuresCalculationEntity' UNIQUE ('HeightStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HeightStructureEntity'
+(
+ 'HeightStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ CONSTRAINT 'FK_HeightStructure_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'HeightStructuresCalculationEntity'
+(
+ 'HeightStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'HeightStructureEntityId' INTEGER,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comments' TEXT,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'StormDurationMean' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'DeviationWaveDirection' REAL,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HeightStructureEntity' FOREIGN KEY ('HeightStructureEntityId') REFERENCES 'HeightStructureEntity' ('HeightStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HeightStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructureEntity'
+(
+ 'ClosingStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOpenStructureBeforeFlooding' REAL,
+ 'FailureProbabilityOpenStructure' REAL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ CONSTRAINT 'FK_ClosingStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'ClosingStructuresCalculationEntity'
+(
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'ForeshoreProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'ClosingStructureEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (255),
+ 'Comments' TEXT,
+ 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false
+ 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam
+ 'BreakWaterHeight' REAL,
+ 'UseForeshore' TINYINT (1) NOT NULL, -- true or false
+ 'Orientation' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'LevelCrestStructureNotClosingMean' REAL,
+ 'LevelCrestStructureNotClosingStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ProbabilityOpenStructureBeforeFlooding' REAL NOT NULL,
+ 'FailureProbabilityOpenStructure' REAL NOT NULL,
+ 'IdenticalApertures' INT (4) NOT NULL,
+ 'FailureProbabilityReparation' REAL NOT NULL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = VerticalWall, 2 = LowSill, 3 = FloodedCulvert
+ 'FailureProbabilityStructureWithErosion' REAL NOT NULL,
+ 'DeviationWaveDirection' REAL,
+ 'DrainCoefficientMean' REAL,
+ 'ModelFactorSuperCriticalFlowMean' REAL,
+ 'StormDurationMean' REAL,
+ 'FactorStormDurationOpenStructure' REAL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ClosingStructureEntity' FOREIGN KEY ('ClosingStructureEntityId') REFERENCES 'ClosingStructureEntity' ('ClosingStructureEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity' FOREIGN KEY ('ForeshoreProfileEntityId') REFERENCES 'ForeshoreProfileEntity' ('ForeshoreProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'ClosingStructuresOutputEntity'
+(
+ 'ClosingStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ClosingStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity' FOREIGN KEY ('ClosingStructuresCalculationEntityId') REFERENCES 'ClosingStructuresCalculationEntity' ('ClosingStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_ClosingStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'U_ClosingStructuresCalculationEntity' UNIQUE ('ClosingStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'StabilityPointStructureEntity'
+(
+ 'StabilityPointStructureEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'Id' VARCHAR (260) NOT NULL,
+ 'X' REAL,
+ 'Y' REAL,
+ 'StructureNormalOrientation' REAL,
+ 'StorageStructureAreaMean' REAL,
+ 'StorageStructureAreaCoefficientOfVariation' REAL,
+ 'AllowedLevelIncreaseStorageMean' REAL,
+ 'AllowedLevelIncreaseStorageStandardDeviation' REAL,
+ 'WidthFlowAperturesMean' REAL,
+ 'WidthFlowAperturesStandardDeviation' REAL,
+ 'InsideWaterLevelMean' REAL,
+ 'InsideWaterLevelStandardDeviation' REAL,
+ 'ThresholdHeightOpenWeirMean' REAL,
+ 'ThresholdHeightOpenWeirStandardDeviation' REAL,
+ 'CriticalOvertoppingDischargeMean' REAL,
+ 'CriticalOvertoppingDischargeCoefficientOfVariation' REAL,
+ 'FlowWidthAtBottomProtectionMean' REAL,
+ 'FlowWidthAtBottomProtectionStandardDeviation' REAL,
+ 'ConstructiveStrengthLinearLoadModelMean' REAL,
+ 'ConstructiveStrengthLinearLoadModelCoefficientOfVariation' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelMean' REAL,
+ 'ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'BankWidthMean' REAL,
+ 'BankWidthStandardDeviation' REAL,
+ 'InsideWaterLevelFailureConstructionMean' REAL,
+ 'InsideWaterLevelFailureConstructionStandardDeviation' REAL,
+ 'EvaluationLevel' REAL,
+ 'LevelCrestStructureMean' REAL,
+ 'LevelCrestStructureStandardDeviation' REAL,
+ 'VerticalDistance' REAL,
+ 'FailureProbabilityRepairClosure' REAL,
+ 'FailureCollisionEnergyMean' REAL,
+ 'FailureCollisionEnergyCoefficientOfVariation' REAL,
+ 'ShipMassMean' REAL,
+ 'ShipMassCoefficientOfVariation' REAL,
+ 'ShipVelocityMean' REAL,
+ 'ShipVelocityCoefficientOfVariation' REAL,
+ 'LevellingCount' INT (4) NOT NULL,
+ 'ProbabilityCollisionSecondaryStructure' REAL,
+ 'FlowVelocityStructureClosableMean' REAL,
+ 'StabilityLinearLoadModelMean' REAL,
+ 'StabilityLinearLoadModelCoefficientOfVariation' REAL,
+ 'StabilityQuadraticLoadModelMean' REAL,
+ 'StabilityQuadraticLoadModelCoefficientOfVariation' REAL,
+ 'AreaFlowAperturesMean' REAL,
+ 'AreaFlowAperturesStandardDeviation' REAL,
+ 'InflowModelType' TINYINT (1) NOT NULL, -- Enum: 1 = LowSill, 2 = FloodedCulvert
+ CONSTRAINT 'FK_StabilityPointStructureEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_Id_FailureMechanismEntityId' UNIQUE ('FailureMechanismEntityId','Id')
+)
+;
+
+CREATE TABLE 'StabilityPointStructuresOutputEntity'
+(
+ 'StabilityPointStructuresOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StabilityPointStructuresCalculationEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Reliability' REAL,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity' FOREIGN KEY ('StabilityPointStructuresCalculationEntityId') REFERENCES 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructuresCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_StabilityPointStructuresCalculationEntity' UNIQUE ('StabilityPointStructuresCalculationEntityId')
+)
+;
+
+CREATE TABLE 'HydraulicLocationOutputEntity'
+(
+ 'HydraulicLocationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationCalculationEntityId' INTEGER,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER,
+ 'Result' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_HydraulicLocationOutputEntity_HydraulicLocationCalculationEntity' FOREIGN KEY ('HydraulicLocationCalculationEntityId') REFERENCES 'HydraulicLocationCalculationEntity' ('HydraulicLocationCalculationEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationEntity'
+(
+ 'DuneLocationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ 'LocationId' INTEGER NOT NULL,
+ 'Name' VARCHAR (260) NOT NULL,
+ 'LocationX' REAL,
+ 'LocationY' REAL,
+ 'CoastalAreaId' INT (4) NOT NULL,
+ 'Offset' REAL,
+ 'Orientation' REAL,
+ 'D50' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_DuneLocationEntity_FailureMechanismEntity' FOREIGN KEY ('FailureMechanismEntityId') REFERENCES 'FailureMechanismEntity' ('FailureMechanismEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'DuneLocationCalculationOutputEntity'
+(
+ 'DuneLocationCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'DuneLocationCalculationEntityId' INTEGER NOT NULL,
+ 'WaterLevel' REAL,
+ 'WaveHeight' REAL,
+ 'WavePeriod' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculatedNotConverged, 3 = CalculatedConverged
+ CONSTRAINT 'FK_DuneLocationCalculationOutputEntity_DuneLocationCalculationEntity' FOREIGN KEY ('DuneLocationCalculationEntityId') REFERENCES 'DuneLocationCalculationEntity' ('DuneLocationCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataEntity'
+(
+ 'BackgroundDataEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'IsVisible' TINYINT (1) NOT NULL, -- true or false
+ 'Transparency' REAL NOT NULL,
+ 'BackgroundDataType' TINYINT (1) NOT NULL, -- Enum: 1 = Wmts, 2 = WellKnown
+ CONSTRAINT 'FK_BackgroundDataEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'BackgroundDataMetaEntity'
+(
+ 'BackgroundDataMetaEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'BackgroundDataEntityId' INTEGER NOT NULL,
+ 'Key' TEXT NOT NULL,
+ 'Value' TEXT NOT NULL,
+ CONSTRAINT 'FK_BackgroundDataMetaEntity_BackgroundDataEntity' FOREIGN KEY ('BackgroundDataEntityId') REFERENCES 'BackgroundDataEntity' ('BackgroundDataEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_BackgroundDataEntityId_Key' UNIQUE ('BackgroundDataEntityId','Key')
+)
+;
+
+CREATE TABLE 'GrassCoverErosionInwardsOvertoppingRateOutputEntity'
+(
+ 'GrassCoverErosionInwardsOvertoppingRateOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GrassCoverErosionInwardsOutputEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER,
+ 'OvertoppingRate' REAL,
+ 'TargetProbability' REAL,
+ 'TargetReliability' REAL,
+ 'CalculatedProbability' REAL,
+ 'CalculatedReliability' REAL,
+ 'CalculationConvergence' TINYINT (1) NOT NULL, -- Enum: 1 = NotCalculated, 2 = CalculationNotConverged, 3 = CalculationConverged
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity' FOREIGN KEY ('GrassCoverErosionInwardsOutputEntityId') REFERENCES 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsOutputEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'U_GrassCoverErosionInwardsOutputEntity' UNIQUE ('GrassCoverErosionInwardsOutputEntityId')
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'IllustrationPointResultEntity'
+(
+ 'IllustrationPointResultEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Description' TEXT NOT NULL,
+ 'Value' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'StochastEntity'
+(
+ 'StochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL
+)
+;
+
+CREATE TABLE 'GeneralResultSubMechanismIllustrationPointStochastEntity'
+(
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultSubMechanismIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultSubMechanismIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultSubMechanisIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GoverningWindDirectionName' TEXT NOT NULL,
+ 'GoverningWindDirectionAngle' REAL NOT NULL
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentFaultTreeIllustrationPointEntityId' INTEGER,
+ 'Name' TEXT NOT NULL,
+ 'Beta' REAL NOT NULL,
+ 'CombinationType' TINYINT (1) NOT NULL, -- Enum: 1 = Or, 2 = And
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint' FOREIGN KEY ('ParentFaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'FaultTreeIllustrationPointStochastEntity'
+(
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('FaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'GeneralResultFaultTreeIllustrationPointStochastEntity'
+(
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'StochastEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_GeneralResultFaultTreeIllustrationPointStochastEntity' PRIMARY KEY ('GeneralResultFaultTreeIllustrationPointEntityId','StochastEntityId'),
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity' FOREIGN KEY ('StochastEntityId') REFERENCES 'StochastEntity' ('StochastEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelSubMechanismIllustrationPointEntity'
+(
+ 'TopLevelSubMechanismIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'GeneralResultSubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity' FOREIGN KEY ('GeneralResultSubMechanismIllustrationPointEntityId') REFERENCES 'GeneralResultSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'TopLevelFaultTreeIllustrationPointEntity'
+(
+ 'TopLevelFaultTreeIllustrationPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'GeneralResultFaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ 'ClosingSituation' TEXT NOT NULL,
+ 'WindDirectionName' TEXT NOT NULL,
+ 'WindDirectionAngle' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity' FOREIGN KEY ('GeneralResultFaultTreeIllustrationPointEntityId') REFERENCES 'GeneralResultFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'SubMechanismIllustrationPointStochastEntity'
+(
+ 'SubMechanismIllustrationPointStochastEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'Name' TEXT NOT NULL,
+ 'Duration' REAL NOT NULL,
+ 'Alpha' REAL NOT NULL,
+ 'Realization' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE No Action ON UPDATE No Action
+)
+;
+
+CREATE TABLE 'FaultTreeSubmechanismIllustrationPointEntity'
+(
+ 'SubMechanismIllustrationPointEntityId' INTEGER NOT NULL,
+ 'FaultTreeIllustrationPointEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_FaultTreeSubMechanismIllustrationPointEntityId' PRIMARY KEY ('SubMechanismIllustrationPointEntityId','FaultTreeIllustrationPointEntityId'),
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity' FOREIGN KEY ('FaultTreeIllustrationPointEntityId') REFERENCES 'FaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity' FOREIGN KEY ('SubMechanismIllustrationPointEntityId') REFERENCES 'SubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationEntity'
+(
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'SurfaceLineEntityId' INTEGER,
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER,
+ 'HydraulicLocationEntityId' INTEGER,
+ 'Order' INT (4) NOT NULL,
+ 'Name' VARCHAR (260),
+ 'Comment' TEXT,
+ 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false
+ 'ScenarioContribution' REAL,
+ 'AssessmentLevel' REAL,
+ 'UseAssessmentLevelManualInput' TINYINT (1) NOT NULL, -- true or false
+ 'SlipPlaneMinimumDepth' REAL,
+ 'SlipPlaneMinimumLength' REAL,
+ 'MaximumSliceWidth' REAL,
+ 'MoveGrid' TINYINT (1) NOT NULL, -- true or false
+ 'GridDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic, 2 = Manual
+ 'TangentLineDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Specified, 2 = LayerSeparated
+ 'TangentLineZTop' REAL,
+ 'TangentLineZBottom' REAL,
+ 'TangentLineNumber' INT (4) NOT NULL,
+ 'LeftGridXLeft' REAL,
+ 'LeftGridXRight' REAL,
+ 'LeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'LeftGridZTop' REAL,
+ 'LeftGridZBottom' REAL,
+ 'LeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'RightGridXLeft' REAL,
+ 'RightGridXRight' REAL,
+ 'RightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'RightGridZTop' REAL,
+ 'RightGridZBottom' REAL,
+ 'RightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'DikeSoilScenario' TINYINT (1) NOT NULL, -- Enumtype: 1 = ClayDikeOnClay, 2 = SandDikeOnClay, 3 = ClayDikeOnSand, 4 = SandDikeOnSand
+ 'WaterLevelRiverAverage' REAL,
+ 'DrainageConstructionPresent' TINYINT (1) NOT NULL, -- true or false
+ 'DrainageConstructionCoordinateX' REAL,
+ 'DrainageConstructionCoordinateZ' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopRiver' REAL,
+ 'MinimumLevelPhreaticLineAtDikeTopPolder' REAL,
+ 'AdjustPhreaticLine3And4ForUplift' TINYINT (1) NOT NULL, -- true or false
+ 'LeakageLengthOutwardsPhreaticLine3' REAL,
+ 'LeakageLengthInwardsPhreaticLine3' REAL,
+ 'LeakageLengthOutwardsPhreaticLine4' REAL,
+ 'LeakageLengthInwardsPhreaticLine4' REAL,
+ 'PiezometricHeadPhreaticLine2Outwards' REAL,
+ 'PiezometricHeadPhreaticLine2Inwards' REAL,
+ 'LocationInputExtremeWaterLevelPolder' REAL,
+ 'LocationInputExtremeUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputExtremePhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputExtremePhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'LocationInputExtremePenetrationLength' REAL,
+ 'LocationInputDailyWaterLevelPolder' REAL,
+ 'LocationInputDailyUseDefaultOffsets' TINYINT (1) NOT NULL, -- true or false
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtRiver' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowDikeTopAtPolder' REAL,
+ 'LocationInputDailyPhreaticLineOffsetBelowShoulderBaseInside' REAL,
+ 'LocationInputDailyPhreaticLineOffsetDikeToeAtPolder' REAL,
+ 'CreateZones' TINYINT (1) NOT NULL, -- true or false
+ 'ZoningBoundariesDeterminationType' TINYINT (1) NOT NULL, -- Enumtype: 1 = Automatic 2 = Manual
+ 'ZoneBoundaryLeft' REAL,
+ 'ZoneBoundaryRight' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity' FOREIGN KEY ('MacroStabilityInwardsStochasticSoilProfileEntityId') REFERENCES 'MacroStabilityInwardsStochasticSoilProfileEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId') ON DELETE Set Null ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Set Null ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCalculationOutputEntity'
+(
+ 'MacroStabilityInwardsCalculationOutputEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsCalculationEntityId' INTEGER NOT NULL,
+ 'FactorOfStability' REAL,
+ 'ZValue' REAL,
+ 'ForbiddenZonesXEntryMin' REAL,
+ 'ForbiddenZonesXEntryMax' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterX' REAL,
+ 'SlidingCurveLeftSlidingCircleCenterY' REAL,
+ 'SlidingCurveLeftSlidingCircleRadius' REAL,
+ 'SlidingCurveLeftSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveLeftSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveLeftSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveLeftSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleCenterX' REAL,
+ 'SlidingCurveRightSlidingCircleCenterY' REAL,
+ 'SlidingCurveRightSlidingCircleRadius' REAL,
+ 'SlidingCurveRightSlidingCircleIsActive' TINYINT (1) NOT NULL, -- true or false
+ 'SlidingCurveRightSlidingCircleNonIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleIteratedForce' REAL,
+ 'SlidingCurveRightSlidingCircleDrivingMoment' REAL,
+ 'SlidingCurveRightSlidingCircleResistingMoment' REAL,
+ 'SlidingCurveNonIteratedHorizontalForce' REAL,
+ 'SlidingCurveIteratedHorizontalForce' REAL,
+ 'SlidingCurveSliceXML' TEXT NOT NULL, -- XML representation of MacroStabilityInwardsSlice
+ 'SlipPlaneLeftGridXLeft' REAL,
+ 'SlipPlaneLeftGridXRight' REAL,
+ 'SlipPlaneLeftGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneLeftGridZTop' REAL,
+ 'SlipPlaneLeftGridZBottom' REAL,
+ 'SlipPlaneLeftGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridXLeft' REAL,
+ 'SlipPlaneRightGridXRight' REAL,
+ 'SlipPlaneRightGridNrOfHorizontalPoints' INT (4) NOT NULL,
+ 'SlipPlaneRightGridZTop' REAL,
+ 'SlipPlaneRightGridZBottom' REAL,
+ 'SlipPlaneRightGridNrOfVerticalPoints' INT (4) NOT NULL,
+ 'SlipPlaneTangentLinesXml' TEXT NOT NULL, -- XML representation of TangentLines
+ CONSTRAINT 'FK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity' FOREIGN KEY ('MacroStabilityInwardsCalculationEntityId') REFERENCES 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsCalculationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsCharacteristicPointEntity'
+(
+ 'MacroStabilityInwardsCharacteristicPointEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'SurfaceLineEntityId' INTEGER NOT NULL,
+ 'Type' SMALLINT NOT NULL, -- Enumtype: 1 = SurfaceLevelOutside 2 = DikeTopAtRiver 3 = DikeToeAtRiver 4 = DikeTopAtPolder 5 = ShoulderBaseInside 6 = ShoulderTopInside 7 = DikeToeAtPolder 8 = DitchDikeSide 9 = BottomDitchDikeSide 10 = BottomDitchPolderSide 11 = DitchPolderSide 12 = SurfaceLevelInside
+ 'X' REAL,
+ 'Y' REAL,
+ 'Z' REAL,
+ CONSTRAINT 'FK_MacroStabilityInwardsCharacteristicPointEntity_SurfaceLineEntity' FOREIGN KEY ('SurfaceLineEntityId') REFERENCES 'SurfaceLineEntity' ('SurfaceLineEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerOneDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL,
+ 'Top' REAL,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileOneDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL,
+ 'Bottom' REAL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'ParentMacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER,
+ 'IsAquifer' TINYINT (1) NOT NULL, -- true or false
+ 'Color' INTEGER, -- ARGB value of Color.
+ 'MaterialName' TEXT NOT NULL,
+ 'ShearStrengthModel' TINYINT (1) NOT NULL, -- Enumtype: 1 = SuCalculated, 2 = CPhi, 3 = CPhiOrSuCalculated
+ 'UsePop' TINYINT (1) NOT NULL, -- true of false
+ 'AbovePhreaticLevelMean' REAL,
+ 'AbovePhreaticLevelCoefficientOfVariation' REAL,
+ 'AbovePhreaticLevelShift' REAL,
+ 'BelowPhreaticLevelMean' REAL,
+ 'BelowPhreaticLevelCoefficientOfVariation' REAL,
+ 'BelowPhreaticLevelShift' REAL,
+ 'CohesionMean' REAL,
+ 'CohesionCoefficientOfVariation' REAL,
+ 'FrictionAngleMean' REAL,
+ 'FrictionAngleCoefficientOfVariation' REAL,
+ 'ShearStrengthRatioMean' REAL,
+ 'ShearStrengthRatioCoefficientOfVariation' REAL,
+ 'StrengthIncreaseExponentMean' REAL,
+ 'StrengthIncreaseExponentCoefficientOfVariation' REAL,
+ 'PopMean' REAL,
+ 'PopCoefficientOfVariation' REAL,
+ 'OuterRingXml' TEXT NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('ParentMacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'Name' TEXT NOT NULL
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsStochasticSoilProfileEntity'
+(
+ 'MacroStabilityInwardsStochasticSoilProfileEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'StochasticSoilModelEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilProfileOneDEntityId' INTEGER,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER,
+ 'Probability' REAL NOT NULL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileOneDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileOneDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity' FOREIGN KEY ('StochasticSoilModelEntityId') REFERENCES 'StochasticSoilModelEntity' ('StochasticSoilModelEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsPreconsolidationStressEntity'
+(
+ 'MacroStabilityInwardsPreconsolidationStressEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'CoordinateX' REAL NOT NULL,
+ 'CoordinateZ' REAL NOT NULL,
+ 'PreconsolidationStressMean' REAL,
+ 'PreconsolidationStressCoefficientOfVariation' REAL,
+ 'Order' INT (4) NOT NULL,
+ CONSTRAINT 'FK_MacroStabilityInwardsPreconsolidationStressEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity'
+(
+ 'MacroStabilityInwardsSoilProfileTwoDEntityId' INTEGER NOT NULL,
+ 'MacroStabilityInwardsSoilLayerTwoDEntityId' INTEGER NOT NULL,
+ CONSTRAINT 'PK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity' PRIMARY KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId','MacroStabilityInwardsSoilLayerTwoDEntityId'),
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilLayerTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilLayerTwoDEntity' ('MacroStabilityInwardsSoilLayerTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity_MacroStabilityInwardsSoilProfileTwoDEntity' FOREIGN KEY ('MacroStabilityInwardsSoilProfileTwoDEntityId') REFERENCES 'MacroStabilityInwardsSoilProfileTwoDEntity' ('MacroStabilityInwardsSoilProfileTwoDEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationCalculationEntity'
+(
+ 'HydraulicLocationCalculationEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationCalculationCollectionEntityId' INTEGER NOT NULL,
+ 'ShouldIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- True or false
+ CONSTRAINT 'FK_HydraulicLocationCalculationEntity_HydraulicLocationCalculationCollectionEntity' FOREIGN KEY ('HydraulicLocationCalculationCollectionEntityId') REFERENCES 'HydraulicLocationCalculationCollectionEntity' ('HydraulicLocationCalculationCollectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
+ CONSTRAINT 'FK_HydraulicLocationCalculationEntity_HydraulicLocationEntity' FOREIGN KEY ('HydraulicLocationEntityId') REFERENCES 'HydraulicLocationEntity' ('HydraulicLocationEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+CREATE TABLE 'HydraulicLocationCalculationCollectionEntity'
+(
+ 'HydraulicLocationCalculationCollectionEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT
+)
+;
+
+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 TABLE 'HydraulicBoundaryDatabaseEntity'
+(
+ 'HydraulicBoundaryDatabaseEntity' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'AssessmentSectionEntityId' INTEGER NOT NULL,
+ 'Version' TEXT NOT NULL,
+ 'FilePath' TEXT NOT NULL,
+ 'HydraulicLocationConfigurationSettingsFilePath' TEXT NOT NULL,
+ 'HydraulicLocationConfigurationSettingsScenarioName' TEXT NOT NULL,
+ 'HydraulicLocationConfigurationSettingsYear' INT (4) NOT NULL,
+ 'HydraulicLocationConfigurationSettingsScope' TEXT NOT NULL,
+ 'HydraulicLocationConfigurationSettingsSeaLevel' TEXT,
+ 'HydraulicLocationConfigurationSettingsRiverDischarge' TEXT,
+ 'HydraulicLocationConfigurationSettingsLakeLevel' TEXT,
+ 'HydraulicLocationConfigurationSettingsWindDirection' TEXT,
+ 'HydraulicLocationConfigurationSettingsWindSpeed' TEXT,
+ 'HydraulicLocationConfigurationSettingsComment' TEXT,
+ CONSTRAINT 'FK_HydraulicBoundaryDatabaseEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade
+)
+;
+
+/* Create Indexes and Triggers */
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsDikeHeightOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsDikeHeightOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsDikeHeightOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsDikeHeightOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'MacroStabilityInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity1'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity1Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity2'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity2Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity3'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity3Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity4'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity4Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity5'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity5Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity6'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity6Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity7'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity7Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_HydraulicLocationCalculationCollectionEntity8'
+ ON 'AssessmentSectionEntity' ('HydraulicLocationCalculationCollectionEntity8Id' ASC)
+;
+
+CREATE INDEX 'IXFK_AssessmentSectionEntity_ProjectEntity'
+ ON 'AssessmentSectionEntity' ('ProjectEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteAssessmentSectionEntity_RemoveHydraulicLocationCalculationCollectionEntities]
+ AFTER DELETE
+ ON AssessmentSectionEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM HydraulicLocationCalculationCollectionEntity
+ WHERE HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity1Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity2Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity3Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity4Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity5Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity6Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity7Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity8Id;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityOutwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'MacroStabilityOutwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismSectionEntity_FailureMechanismEntity'
+ ON 'FailureMechanismSectionEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_AssessmentSectionEntity'
+ ON 'FailureMechanismEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FailureMechanismEntity_CalculationGroupEntity'
+ ON 'FailureMechanismEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresCalculationEntity_StabilityPointStructureEntity'
+ ON 'StabilityPointStructuresCalculationEntity' ('StabilityPointStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'ClosingStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityStoneCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_CalculationGroupEntity_CalculationGroupEntity'
+ ON 'CalculationGroupEntity' ('ParentCalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationEntity_AssessmentSectionEntity'
+ ON 'HydraulicLocationEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_PipingStochasticSoilProfileEntity'
+ ON 'PipingCalculationEntity' ('PipingStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_SurfaceLineEntity'
+ ON 'PipingCalculationEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_HydraulicLocationEntity'
+ ON 'PipingCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationEntity_CalculationGroupEntity'
+ ON 'PipingCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'GrassCoverErosionInwardsFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityPointConstructionFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_DikeProfileEntity'
+ ON 'GrassCoverErosionInwardsCalculationEntity' ('DikeProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsCalculationEntity_HydraulicLocationEntity'
+ 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)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity1'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity1Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity2'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity2Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity3'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity3Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity4'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity4Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity5'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity5Id' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsFailureMechanismMetaEntity_HydraulicLocationCalculationCollectionEntity6'
+ ON 'GrassCoverErosionOutwardsFailureMechanismMetaEntity' ('HydraulicLocationCalculationCollectionEntity6Id' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionOutwardsFailureMechanismMetaEntity_RemoveHydraulicLocationCalculationCollectionEntities]
+ AFTER DELETE
+ ON GrassCoverErosionOutwardsFailureMechanismMetaEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM HydraulicLocationCalculationCollectionEntity
+ WHERE HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity1Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity2Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity3Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity4Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity5Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity6Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity7Id
+ OR HydraulicLocationCalculationCollectionEntityId IS OLD.HydraulicLocationCalculationCollectionEntity8Id;
+END;
+;
+
+CREATE INDEX 'IXFK_HeightStructuresFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'HeightStructuresFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_SoilProfileEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('PipingSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'PipingStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StochasticSoilModelEntity_FailureMechanismEntity'
+ ON 'StochasticSoilModelEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLineEntity_FailureMechanismEntity'
+ ON 'SurfaceLineEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_SurfaceLinePointEntity_SurfaceLineEntity'
+ ON 'PipingCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingCalculationOutputEntity_PipingCalculationEntity'
+ ON 'PipingCalculationOutputEntity' ('PipingCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'PipingStructureFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsSectionResultEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsSectionResultEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'HeightStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresSectionResultEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresSectionResultEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StrengthStabilityLengthwiseConstructionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StrengthStabilityLengthwiseConstructionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TechnicalInnovationSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'TechnicalInnovationSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaterPressureAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaterPressureAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'ClosingStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverErosionOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverSlipOffOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'GrassCoverSlipOffOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacroStabilityInwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityOutwardsSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MacroStabilityOutwardsSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverFailureMechanismMetaEntity_FailureMechanismEntity'
+ ON 'WaveImpactAsphaltCoverFailureMechanismMetaEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'WaveImpactAsphaltCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MicrostabilitySectionResultEntity_FailureMechanismSectionEntity'
+ ON 'MicrostabilitySectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_PipingStructureSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'PipingStructureSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneErosionSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'DuneErosionSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityStoneCoverSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_FailureMechanismSectionEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('FailureMechanismSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresSectionResultEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresSectionResultEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DikeProfileEntity_FailureMechanismEntity'
+ ON 'DikeProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOutputEntity_GrassCoverErosionInwardsCalculationEntity'
+ ON 'GrassCoverErosionInwardsOutputEntity' ('GrassCoverErosionInwardsCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_ForeshoreProfileEntity_FailureMechanismEntity'
+ ON 'ForeshoreProfileEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'StabilityStoneCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityStoneCoverWaveConditionsOutputEntity_StabilityStoneCoverWaveConditionsCalculationEntity'
+ ON 'StabilityStoneCoverWaveConditionsOutputEntity' ('StabilityStoneCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_WaveImpactAsphaltCoverWaveConditionsOutputEntity_WaveImpactAsphaltCoverWaveConditionsCalculationEntity'
+ ON 'WaveImpactAsphaltCoverWaveConditionsOutputEntity' ('WaveImpactAsphaltCoverWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_CalculationGroupEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_ForeshoreProfileEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsCalculationEntity_HydraulicLocationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionOutwardsWaveConditionsOutputEntity_GrassCoverErosionOutwardsWaveConditionsCalculationEntity'
+ ON 'GrassCoverErosionOutwardsWaveConditionsOutputEntity' ('GrassCoverErosionOutwardsWaveConditionsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresOutputEntity_HeightStructuresCalculationEntity'
+ ON 'HeightStructuresOutputEntity' ('HeightStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHeightStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON HeightStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HeightStructure_FailureMechanismEntity'
+ ON 'HeightStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'HeightStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'HeightStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HeightStructureEntity'
+ ON 'HeightStructuresCalculationEntity' ('HeightStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HeightStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'HeightStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructureEntity_FailureMechanismEntity'
+ ON 'ClosingStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_CalculationGroupEntity'
+ ON 'ClosingStructuresCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ClosingStructureEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ClosingStructureEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_ForeshoreProfileEntity'
+ ON 'ClosingStructuresCalculationEntity' ('ForeshoreProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresCalculationEntity_HydraulicLocationEntity'
+ ON 'ClosingStructuresCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_ClosingStructuresOutputEntity_ClosingStructuresCalculationEntity'
+ ON 'ClosingStructuresOutputEntity' ('ClosingStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteClosingStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON ClosingStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructureEntity_FailureMechanismEntity'
+ ON 'StabilityPointStructureEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_StabilityPointStructuresOutputEntity_StabilityPointStructuresCalculationEntity'
+ ON 'StabilityPointStructuresOutputEntity' ('StabilityPointStructuresCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteStabilityPointStructuresOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON StabilityPointStructuresOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'HydraulicLocationOutputEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationOutputEntity_HydraulicLocationCalculationEntity'
+ ON 'HydraulicLocationOutputEntity' ('HydraulicLocationCalculationEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteHydraulicLocationOutputEntity_RemoveGeneralResultSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON HydraulicLocationOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultSubMechanismIllustrationPointEntity
+ WHERE OLD.GeneralResultSubMechanismIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultSubMechanismIllustrationPointEntityId IS OLD.GeneralResultSubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_DuneLocationEntity_FailureMechanismEntity'
+ ON 'DuneLocationEntity' ('FailureMechanismEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_DuneLocationCalculationOutputEntity_DuneLocationCalculationEntity'
+ ON 'DuneLocationCalculationOutputEntity' ('DuneLocationCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataEntity_AssessmentSectionEntity'
+ ON 'BackgroundDataEntity' ('AssessmentSectionEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_BackgroundDataMetaEntity_BackgroundDataEntity'
+ ON 'BackgroundDataMetaEntity' ('BackgroundDataEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GrassCoverErosionInwardsOvertoppingRateOutputEntity_GrassCoverErosionInwardsOutputEntity'
+ ON 'GrassCoverErosionInwardsOvertoppingRateOutputEntity' ('GrassCoverErosionInwardsOutputEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGrassCoverErosionInwardsOvertoppingRateOutputEntity_RemoveGeneralResultFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON GrassCoverErosionInwardsOvertoppingRateOutputEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM GeneralResultFaultTreeIllustrationPointEntity
+ WHERE OLD.GeneralResultFaultTreeIllustrationPointEntityId IS NOT NULL
+ AND GeneralResultFaultTreeIllustrationPointEntityId IS OLD.GeneralResultFaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_IllustrationPointResultEntity_SubMechanismIllustrationPointEntity'
+ ON 'IllustrationPointResultEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultSubMechanismIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultSubMechanismIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultSubMechanismIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultSubMechanismIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPoint_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointEntity' ('ParentFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_FaultTreeIllustrationPoint'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'FaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON FaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_GeneralResultFaultTreeIllustrationPointStochastEntity_StochastEntity'
+ ON 'GeneralResultFaultTreeIllustrationPointStochastEntity' ('StochastEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteGeneralResultFaultTreeIllustrationPointStochastEntity_RemoveStochastEntity]
+ AFTER DELETE
+ ON GeneralResultFaultTreeIllustrationPointStochastEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM StochastEntity
+ WHERE OLD.StochastEntityId IS NOT NULL
+ AND StochastEntityId IS OLD.StochastEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_GeneralResultSubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('GeneralResultSubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelSubMechanismIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'TopLevelSubMechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelSubMechanismIllustrationPointEntity_RemoveSubMechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelSubMechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubMechanismIllustrationPointEntity
+ WHERE OLD.SubMechanismIllustrationPointEntityId IS NOT NULL
+ AND SubMechanismIllustrationPointEntityId IS OLD.SubMechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_TopLevelFaultTreeIllustrationPointEntity_GeneralResultFaultTreeIllustrationPointEntity'
+ ON 'TopLevelFaultTreeIllustrationPointEntity' ('GeneralResultFaultTreeIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteTopLevelFaultTreeIllustrationPointEntity_RemoveFaultTreeIllustrationPointEntity]
+ AFTER DELETE
+ ON TopLevelFaultTreeIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM FaultTreeIllustrationPointEntity
+ WHERE OLD.FaultTreeIllustrationPointEntityId IS NOT NULL
+ AND FaultTreeIllustrationPointEntityId IS OLD.FaultTreeIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_SubMechanismIllustrationPointStochast_SubMechanismIllustrationPointEntity'
+ ON 'SubMechanismIllustrationPointStochastEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_FaultTreeIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('FaultTreeIllustrationPointEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_FaultTreeIllustrationPointEntity_SubMechanismIllustrationPointEntity'
+ ON 'FaultTreeSubmechanismIllustrationPointEntity' ('SubMechanismIllustrationPointEntityId' ASC)
+;
+CREATE TRIGGER [TR_AfterDeleteFaultTreeSubmechanismIllustrationPointEntity_RemoveSubmechanismIllustrationPointEntity]
+ AFTER DELETE
+ ON FaultTreeSubmechanismIllustrationPointEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM SubmechanismIllustrationPointEntity
+ WHERE OLD.SubmechanismIllustrationPointEntityId IS NOT NULL
+ AND SubmechanismIllustrationPointEntityId IS OLD.SubmechanismIllustrationPointEntityId;
+END;
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_CalculationGroupEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('CalculationGroupEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_HydraulicLocationEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('HydraulicLocationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationEntity_MacroStabilityInwardsStochasticSoilProfileEntity'
+ ON 'MacroStabilityInwardsCalculationEntity' ('MacroStabilityInwardsStochasticSoilProfileEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsCalculationOutput_MacroStabilityInwardsCalculationEntity'
+ ON 'MacroStabilityInwardsCalculationOutputEntity' ('MacroStabilityInwardsCalculationEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityCharacteristicPointEntity_SurfaceLineEntity'
+ ON 'MacroStabilityInwardsCharacteristicPointEntity' ('SurfaceLineEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsSoilLayerOneDEntity_MacroStabilityInwardsSoilProfileOneDEntity'
+ ON 'MacroStabilityInwardsSoilLayerOneDEntity' ('MacroStabilityInwardsSoilProfileOneDEntityId' ASC)
+;
+
+CREATE INDEX 'IXFK_MacroStabilityInwardsStochasticSoilProfileEntity_StochasticSoilModelEntity'
+ ON 'MacroStabilityInwardsStochasticSoilProfileEntity' ('StochasticSoilModelEntityId' ASC)
+;
+CREATE TRIGGER [TR_BeforeInsertMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE INSERT
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_BeforeUpdateMacroStabilityInwardsStochasticSoilProfileEntity_MustHaveOneDOrTwoD]
+ BEFORE UPDATE
+ ON MacroStabilityInwardsStochasticSoilProfileEntity
+ FOR EACH ROW
+BEGIN
+ SELECT
+ CASE
+ WHEN
+ (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NULL
+ ) OR (
+ NEW.MacroStabilityInwardsSoilProfileOneDEntityId IS NOT NULL AND NEW.MacroStabilityInwardsSoilProfileTwoDEntityId IS NOT NULL
+ )
+ THEN RAISE(FAIL, 'Either SoilProfile1D or SoilProfile2D must be set.')
+ END;
+END;
+;
+
+CREATE TRIGGER [TR_AfterDeleteMacroStabilityInwardsSoilProfileTwoDEntity_MacroStabilityInwardsSoilLayerTwoDEntity]
+ AFTER DELETE
+ ON MacroStabilityInwardsSoilProfileTwoDEntity
+ FOR EACH ROW
+BEGIN
+ DELETE
+ FROM MacroStabilityInwardsSoilLayerTwoDEntity
+ WHERE OLD.MacroStabilityInwardsSoilLayerTwoDEntity IS NOT NULL
+ AND MacroStabilityInwardsSoilLayerTwoDEntity IS OLD.MacroStabilityInwardsSoilLayerTwoDEntity;
+END;
+;
+
+CREATE INDEX 'IXFK_HydraulicLocationCalculationEntity_HydraulicLocationCalculationCollectionEntity'
+ ON 'HydraulicLocationCalculationEntity' ('HydraulicLocationCalculationCollectionEntityId' ASC)
+;
+
+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)
+;
+
+CREATE INDEX 'IXFK_HydraulicBoundaryDatabaseEntity_AssessmentSectionEntity'
+ ON 'HydraulicBoundaryDatabaseEntity' ('AssessmentSectionEntityId' ASC)
+;
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.1_17.2.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.1_17.2.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.1_17.2.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,1991 @@
+/*
+Migration script for migrating Ringtoets databases.
+SourceProject version: 17.1
+TargetProject version: 17.2
+*/
+PRAGMA foreign_keys = OFF;
+
+ATTACH DATABASE "{0}" AS SOURCEPROJECT;
+
+CREATE TEMP TABLE TempAssessmentReturnPeriod
+(
+ [AssessmentSectionId] TEXT,
+ [SignalingReturnPeriod] INTEGER NOT NULL,
+ [LowerLimitReturnPeriod] INTEGER NOT NULL
+);
+
+INSERT INTO TempAssessmentReturnPeriod VALUES
+ ('1-1', 1000, 1000),
+ ('1-2', 1000, 1000),
+ ('2-1', 1000, 300),
+ ('2-2', 1000, 1000),
+ ('3-1', 3000, 3000),
+ ('3-2', 1000, 1000),
+ ('4-1', 300, 300),
+ ('4-2', 1000, 300),
+ ('5-1', 3000, 1000),
+ ('5-2', 3000, 3000),
+ ('6-1', 3000, 1000),
+ ('6-2', 3000, 1000),
+ ('6-3', 3000, 1000),
+ ('6-4', 3000, 1000),
+ ('6-5', 3000, 1000),
+ ('6-6', 3000, 1000),
+ ('6-7', 10000, 3000),
+ ('7-1', 3000, 1000),
+ ('7-2', 3000, 1000),
+ ('8-1', 30000, 10000),
+ ('8-2', 30000, 10000),
+ ('8-3', 30000, 10000),
+ ('8-4', 30000, 10000),
+ ('8-5', 3000, 1000),
+ ('8-6', 3000, 1000),
+ ('8-7', 3000, 1000),
+ ('9-1', 1000, 300),
+ ('9-2', 3000, 1000),
+ ('10-1', 3000, 1000),
+ ('10-2', 3000, 1000),
+ ('10-3', 10000, 3000),
+ ('11-1', 3000, 1000),
+ ('11-2', 3000, 1000),
+ ('11-3', 300, 100),
+ ('12-1', 1000, 1000),
+ ('12-2', 3000, 1000),
+ ('13-1', 3000, 1000),
+ ('13-2', 3000, 3000),
+ ('13-3', 3000, 1000),
+ ('13-4', 3000, 1000),
+ ('13-5', 3000, 1000),
+ ('13-6', 3000, 1000),
+ ('13-7', 3000, 1000),
+ ('13-8', 3000, 1000),
+ ('13-9', 3000, 1000),
+ ('13a-1', 300, 100),
+ ('13b-1', 300, 100),
+ ('14-1', 30000, 10000),
+ ('14-10', 30000, 30000),
+ ('14-2', 100000, 30000),
+ ('14-3', 10000, 10000),
+ ('14-4', 10000, 3000),
+ ('14-5', 30000, 10000),
+ ('14-6', 30000, 10000),
+ ('14-7', 30000, 10000),
+ ('14-8', 30000, 10000),
+ ('14-9', 30000, 30000),
+ ('15-1', 30000, 10000),
+ ('15-2', 10000, 3000),
+ ('15-3', 10000, 3000),
+ ('16-1', 100000, 30000),
+ ('16-2', 30000, 10000),
+ ('16-3', 30000, 10000),
+ ('16-4', 30000, 10000),
+ ('16-5', 10, 10), -- Signaling return period set to LowerLimit
+ ('17-1', 3000, 1000),
+ ('17-2', 3000, 1000),
+ ('17-3', 100000, 30000),
+ ('18-1', 10000, 3000),
+ ('19-1', 100000, 30000),
+ ('20-1', 30000, 10000),
+ ('20-2', 10000, 10000),
+ ('20-3', 30000, 10000),
+ ('20-4', 1000, 300),
+ ('21-1', 3000, 1000),
+ ('21-2', 300, 100),
+ ('22-1', 3000, 1000),
+ ('22-2', 10000, 3000),
+ ('23-1', 3000, 1000),
+ ('24-1', 10000, 3000),
+ ('24-2', 1000, 300),
+ ('24-3', 10000, 10000),
+ ('25-1', 3000, 1000),
+ ('25-2', 1000, 300),
+ ('25-3', 300, 100),
+ ('25-4', 300, 300),
+ ('26-1', 3000, 1000),
+ ('26-2', 3000, 1000),
+ ('26-3', 10000, 3000),
+ ('26-4', 1000, 1000),
+ ('27-1', 3000, 3000),
+ ('27-2', 10000, 10000),
+ ('27-3', 3000, 1000),
+ ('27-4', 1000, 300),
+ ('28-1', 1000, 300),
+ ('29-1', 3000, 1000),
+ ('29-2', 10000, 3000),
+ ('29-3', 100000, 30000),
+ ('29-4', 1000, 1000),
+ ('30-1', 3000, 1000),
+ ('30-2', 100000, 100000),
+ ('30-3', 3000, 1000),
+ ('30-4', 1000000, 1000000),
+ ('31-1', 30000, 10000),
+ ('31-2', 10000, 3000),
+ ('31-3', 300, 100),
+ ('32-1', 1000, 300),
+ ('32-2', 1000, 300),
+ ('32-3', 3000, 1000),
+ ('32-4', 3000, 1000),
+ ('33-1', 300, 100),
+ ('34-1', 1000, 300),
+ ('34-2', 1000, 300),
+ ('34-3', 3000, 1000),
+ ('34-4', 1000, 300),
+ ('34-5', 300, 100),
+ ('34a-1', 3000, 1000),
+ ('35-1', 10000, 3000),
+ ('35-2', 3000, 1000),
+ ('36-1', 10000, 3000),
+ ('36-2', 30000, 10000),
+ ('36-3', 30000, 10000),
+ ('36-4', 10000, 3000),
+ ('36-5', 10000, 3000),
+ ('36a-1', 3000, 1000),
+ ('37-1', 10000, 3000),
+ ('38-1', 30000, 10000),
+ ('38-2', 10000, 3000),
+ ('39-1', 3000, 3000),
+ ('40-1', 30000, 30000),
+ ('40-2', 10000, 3000),
+ ('41-1', 30000, 10000),
+ ('41-2', 10000, 3000),
+ ('41-3', 3000, 3000),
+ ('41-4', 10000, 3000),
+ ('42-1', 10000, 3000),
+ ('43-1', 30000, 10000),
+ ('43-2', 10000, 3000),
+ ('43-3', 30000, 10000),
+ ('43-4', 30000, 10000),
+ ('43-5', 30000, 10000),
+ ('43-6', 30000, 10000),
+ ('44-1', 30000, 10000),
+ ('44-2', 300, 100),
+ ('44-3', 30000, 10000),
+ ('45-1', 100000, 30000),
+ ('45-2', 300, 100),
+ ('45-3', 300, 100),
+ ('46-1', 300, 100),
+ ('47-1', 3000, 1000),
+ ('48-1', 30000, 10000),
+ ('48-2', 10000, 3000),
+ ('48-3', 10000, 3000),
+ ('49-1', 300, 100),
+ ('49-2', 10000, 3000),
+ ('50-1', 30000, 10000),
+ ('50-2', 3000, 1000),
+ ('51-1', 1000, 300),
+ ('52-1', 3000, 1000),
+ ('52-2', 3000, 1000),
+ ('52-3', 3000, 1000),
+ ('52-4', 3000, 1000),
+ ('52a-1', 3000, 1000),
+ ('53-1', 3000, 1000),
+ ('53-2', 10000, 3000),
+ ('53-3', 10000, 3000),
+ ('54-1', 1000, 300),
+ ('55-1', 1000, 300),
+ ('56-1', 300, 100),
+ ('57-1', 300, 100),
+ ('58-1', 300, 100),
+ ('59-1', 300, 100),
+ ('60-1', 300, 100),
+ ('61-1', 300, 100),
+ ('63-1', 300, 100),
+ ('64-1', 300, 100),
+ ('65-1', 300, 100),
+ ('66-1', 300, 100),
+ ('67-1', 300, 100),
+ ('68-1', 1000, 300),
+ ('68-2', 300, 100),
+ ('69-1', 1000, 300),
+ ('70-1', 300, 100),
+ ('71-1', 300, 100),
+ ('72-1', 300, 100),
+ ('73-1', 300, 100),
+ ('74-1', 300, 100),
+ ('75-1', 300, 100),
+ ('76-1', 300, 100),
+ ('76-2', 300, 100),
+ ('76a-1', 300, 100),
+ ('77-1', 300, 100),
+ ('78-1', 300, 100),
+ ('78a-1', 300, 100),
+ ('79-1', 300, 100),
+ ('80-1', 300, 100),
+ ('81-1', 300, 100),
+ ('82-1', 300, 100),
+ ('83-1', 300, 100),
+ ('85-1', 300, 100),
+ ('86-1', 300, 100),
+ ('87-1', 1000, 300),
+ ('88-1', 300, 100),
+ ('89-1', 300, 100),
+ ('90-1', 3000, 1000),
+ ('91-1', 300, 300),
+ ('92-1', 300, 100),
+ ('93-1', 1000, 300),
+ ('94-1', 300, 100),
+ ('95-1', 300, 100),
+ ('201', 10000, 3000),
+ ('202', 10000, 3000),
+ ('204a', 10000, 3000),
+ ('204b', 1000, 300),
+ ('205', 3000, 1000),
+ ('206', 10000, 3000),
+ ('208', 100000, 30000),
+ ('209', 100000, 30000),
+ ('210', 100000, 30000),
+ ('211', 3000, 1000),
+ ('212', 10000, 3000),
+ ('213', 10000, 3000),
+ ('214', 3000, 1000),
+ ('215', 30000, 10000),
+ ('216', 3000, 1000),
+ ('217', 30000, 10000),
+ ('218', 30000, 10000),
+ ('219', 30000, 10000),
+ ('221', 10000, 3000),
+ ('222', 30000, 10000),
+ ('223', 30000, 10000),
+ ('224', 30000, 10000),
+ ('225', 30000, 10000),
+ ('226', 3000, 1000),
+ ('227', 3000, 1000);
+
+INSERT INTO AssessmentSectionEntity (
+ [AssessmentSectionEntityId],
+ [ProjectEntityId],
+ [Id],
+ [Name],
+ [Comments],
+ [LowerLimitNorm],
+ [SignalingNorm],
+ [NormativeNormType],
+ [HydraulicDatabaseVersion],
+ [HydraulicDatabaseLocation],
+ [Composition],
+ [ReferenceLinePointXml],
+ [Order])
+SELECT
+ [AssessmentSectionEntityId],
+ [ProjectEntityId],
+ CASE
+ WHEN [Id] IS NULL
+ THEN ""
+ ELSE [Id]
+ END,
+ [Name],
+ [Comments],
+ CASE
+ WHEN SourceAssessmentSection.[LowerLimitReturnPeriod] IS NULL OR [NormativeNormType] == 1 -- If lower limit norm type
+ THEN SourceAssessmentSection.[Norm]
+ ELSE
+ 1.0 / SourceAssessmentSection.[LowerLimitReturnPeriod]
+ END,
+ CASE
+ WHEN SourceAssessmentSection.[SignalingReturnPeriod] IS NULL OR [NormativeNormType] == 2 -- If signaling norm type
+ THEN SourceAssessmentSection.[Norm]
+ ELSE
+ 1.0 / SourceAssessmentSection.[SignalingReturnPeriod]
+ END,
+ [NormativeNormType],
+ [HydraulicDatabaseVersion],
+ [HydraulicDatabaseLocation],
+ [Composition],
+ [ReferenceLinePointXml],
+ [Order]
+FROM
+(
+ SELECT
+ CASE
+ WHEN [SignalingReturnPeriod] IS NULL OR OriginalReturnPeriod BETWEEN ([SignalingReturnPeriod] - 0.1) AND ([SignalingReturnPeriod] + 0.1) OR
+ (
+ OriginalReturnPeriod NOT BETWEEN ([SignalingReturnPeriod] - 0.1) AND ([SignalingReturnPeriod] + 0.1)
+ AND OriginalReturnPeriod NOT BETWEEN ([LowerLimitReturnPeriod] - 0.1) AND ([LowerLimitReturnPeriod] + 0.1)
+ AND OriginalReturnPeriod > [LowerLimitReturnPeriod]
+ )
+ THEN 2 -- Set signaling norm type
+ ELSE 1 -- Set lower limit norm type
+ END AS [NormativeNormType],
+ *
+ FROM
+ (
+ SELECT CAST(1.0 / ASE.[Norm] AS FLOAT) AS OriginalReturnPeriod,
+ *
+ FROM [SOURCEPROJECT].AssessmentSectionEntity ASE
+ LEFT JOIN TempAssessmentReturnPeriod TA ON
+ (
+ TA.[AssessmentSectionId] = ASE.[Id]
+ )
+ )
+) AS SourceAssessmentSection;
+INSERT INTO BackgroundDataEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataEntity;
+INSERT INTO BackgroundDataMetaEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataMetaEntity;
+INSERT INTO CalculationGroupEntity SELECT * FROM [SOURCEPROJECT].CalculationGroupEntity;
+INSERT INTO PipingCharacteristicPointEntity (
+ [PipingCharacteristicPointEntityId],
+ [SurfaceLineEntityId],
+ [Type],
+ [X],
+ [Y],
+ [Z])
+SELECT
+ [CharacteristicPointEntityId],
+ [SurfaceLineEntityId],
+ [Type],
+ [X],
+ [Y],
+ [Z]
+ FROM [SOURCEPROJECT].CharacteristicPointEntity;
+INSERT INTO ClosingStructureEntity (
+ [ClosingStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOrFrequencyOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ [IdenticalApertures],
+ [FailureProbabilityReparation],
+ [InflowModelType])
+SELECT
+ [ClosingStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ CASE
+ WHEN Suffix
+ THEN [Id] || SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength) || Suffix
+ ELSE [Id]
+ END AS [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOrFrequencyOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ [IdenticalApertures],
+ [FailureProbabilityReparation],
+ [InflowModelType]
+ FROM (
+ SELECT *,
+ MaxLength - LENGTH([Id]) AS SuffixPreLength,
+ (
+ SELECT CS.rowid
+ FROM [SOURCEPROJECT].ClosingStructureEntity
+ WHERE CS.[ClosingStructureEntityId] > [ClosingStructureEntityId]
+ AND CS.[Id] IS [Id]
+ AND CS.[FailuremechanismEntityId] = [FailuremechanismEntityId]
+ ) AS Suffix
+ FROM [SOURCEPROJECT].ClosingStructureEntity CS
+ JOIN (
+ SELECT MAX(LENGTH([Id])) AS MaxLength
+ FROM [SOURCEPROJECT].ClosingStructureEntity
+ )
+ );
+INSERT INTO ClosingStructuresCalculationEntity (
+ [ClosingStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [ClosingStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOrFrequencyOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ [IdenticalApertures],
+ [FailureProbabilityReparation],
+ [InflowModelType],
+ [FailureProbabilityStructureWithErosion],
+ [DeviationWaveDirection],
+ [DrainCoefficientMean],
+ [ModelFactorSuperCriticalFlowMean],
+ [StormDurationMean],
+ [FactorStormDurationOpenStructure],
+ [ShouldIllustrationPointsBeCalculated])
+SELECT
+ [ClosingStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [ClosingStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOrFrequencyOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ [IdenticalApertures],
+ [FailureProbabilityReparation],
+ [InflowModelType],
+ [FailureProbabilityStructureWithErosion],
+ [DeviationWaveDirection],
+ [DrainCoefficientMean],
+ [ModelFactorSuperCriticalFlowMean],
+ [StormDurationMean],
+ [FactorStormDurationOpenStructure],
+ 0
+ FROM [SOURCEPROJECT].ClosingStructuresCalculationEntity;
+INSERT INTO ClosingStructuresFailureMechanismMetaEntity (
+ [ClosingStructuresFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N2A],
+ [ClosingStructureCollectionSourcePath],
+ [ForeshoreProfileCollectionSourcePath])
+SELECT
+ [ClosingStructuresFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N2A],
+ CASE
+ WHEN COUNT([ClosingStructureEntityId])
+ THEN ""
+ ELSE NULL
+ END,
+ CASE
+ WHEN COUNT([ForeshoreProfileEntityId])
+ THEN ""
+ ELSE NULL
+ END
+ FROM [SOURCEPROJECT].ClosingStructuresFailureMechanismMetaEntity
+ LEFT JOIN [SOURCEPROJECT].ClosingStructureEntity USING(FailureMechanismEntityId)
+ LEFT JOIN [SOURCEPROJECT].ForeshoreProfileEntity USING(FailureMechanismEntityId)
+ GROUP BY FailureMechanismEntityID;
+INSERT INTO ClosingStructuresSectionResultEntity (
+ [ClosingStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [ClosingStructuresCalculationEntityId],
+ [LayerOne],
+ [LayerThree])
+SELECT
+ [ClosingStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [ClosingStructuresCalculationEntityId],
+ [LayerOne],
+ CASE
+ WHEN [LayerThree] > 1 OR [LayerThree] < 0
+ THEN NULL
+ ELSE
+ [LayerThree]
+ END
+ FROM [SOURCEPROJECT].ClosingStructuresSectionResultEntity;
+INSERT INTO DikeProfileEntity SELECT * FROM [SOURCEPROJECT].DikeProfileEntity;
+INSERT INTO DuneErosionFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].DuneErosionFailureMechanismMetaEntity;
+INSERT INTO DuneErosionSectionResultEntity SELECT * FROM [SOURCEPROJECT].DuneErosionSectionResultEntity;
+INSERT INTO DuneLocationEntity SELECT * FROM [SOURCEPROJECT].DuneLocationEntity;
+INSERT INTO FailureMechanismEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismEntity;
+INSERT INTO FailureMechanismSectionEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismSectionEntity;
+INSERT INTO ForeshoreProfileEntity (
+ [ForeshoreProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [GeometryXml],
+ [X],
+ [Y],
+ [X0],
+ [Order])
+SELECT
+ [ForeshoreProfileEntityId],
+ [FailureMechanismEntityId],
+ CASE
+ WHEN Suffix
+ THEN [Id] || SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength) || Suffix
+ ELSE [Id]
+ END AS [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [GeometryXml],
+ [X],
+ [Y],
+ [X0],
+ [Order]
+ FROM (
+ SELECT *,
+ MaxLength - LENGTH(Id) AS SuffixPreLength,
+ (
+ SELECT FS.rowid
+ FROM [SOURCEPROJECT].ForeshoreProfileEntity
+ WHERE FS.ForeshoreProfileEntityId > ForeshoreProfileEntityId
+ AND FS.Id IS Id
+ AND FS.FailuremechanismEntityId = FailuremechanismEntityId
+ ) AS Suffix
+ FROM [SOURCEPROJECT].ForeshoreProfileEntity FS
+ JOIN (
+ SELECT MAX(LENGTH(Id)) AS MaxLength
+ FROM [SOURCEPROJECT].ForeshoreProfileEntity
+ )
+ );
+INSERT INTO GrassCoverErosionInwardsCalculationEntity (
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [HydraulicLocationEntityId],
+ [DikeProfileEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [Orientation],
+ [CriticalFlowRateMean],
+ [CriticalFlowRateStandardDeviation],
+ [UseForeshore],
+ [DikeHeightCalculationType],
+ [DikeHeight],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [OvertoppingRateCalculationType],
+ [ShouldDikeHeightIllustrationPointsBeCalculated],
+ [ShouldOvertoppingRateIllustrationPointsBeCalculated],
+ [ShouldOvertoppingOutputIllustrationPointsBeCalculated])
+SELECT
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [HydraulicLocationEntityId],
+ [DikeProfileEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [Orientation],
+ [CriticalFlowRateMean],
+ [CriticalFlowRateStandardDeviation],
+ [UseForeshore],
+ [DikeHeightCalculationType],
+ [DikeHeight],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [OvertoppingRateCalculationType],
+ 0,
+ 0,
+ 0
+ FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity;
+INSERT INTO GrassCoverErosionInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionInwardsSectionResultEntity (
+ [GrassCoverErosionInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [LayerOne],
+ [LayerThree])
+SELECT
+ [GrassCoverErosionInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [LayerOne],
+ CASE
+ WHEN [LayerThree] > 1 OR [LayerThree] < 0
+ THEN NULL
+ ELSE
+ [LayerThree]
+ END
+ FROM [SOURCEPROJECT].GrassCoverErosionInwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsFailureMechanismMetaEntity (
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ [ForeshoreProfileCollectionSourcePath])
+SELECT
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ CASE
+ WHEN COUNT([ForeshoreProfileEntityId])
+ THEN ""
+ ELSE NULL
+ END
+ FROM [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity
+ LEFT JOIN [SOURCEPROJECT].ForeshoreProfileEntity USING(FailureMechanismEntityId)
+ GROUP BY FailureMechanismEntityID;
+INSERT INTO GrassCoverErosionOutwardsHydraulicLocationEntity (
+ [GrassCoverErosionOutwardsHydraulicLocationEntityId],
+ [FailureMechanismEntityId],
+ [LocationId],
+ [Name],
+ [LocationX],
+ [LocationY],
+ [ShouldWaveHeightIllustrationPointsBeCalculated],
+ [ShouldDesignWaterLevelIllustrationPointsBeCalculated],
+ [Order])
+SELECT
+ [GrassCoverErosionOutwardsHydraulicLocationEntityId],
+ [FailureMechanismEntityId],
+ [LocationId],
+ [Name],
+ [LocationX],
+ [LocationY],
+ 0,
+ 0,
+ [Order]
+ FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationEntity;
+INSERT INTO GrassCoverErosionOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsCalculationEntity;
+INSERT INTO GrassCoverSlipOffInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity;
+INSERT INTO GrassCoverSlipOffOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity;
+INSERT INTO HeightStructureEntity (
+ [HeightStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [FailureProbabilityStructureWithErosion],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation])
+SELECT
+ [HeightStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ CASE
+ WHEN Suffix
+ THEN [Id] || SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength)|| Suffix
+ ELSE [Id]
+ END AS [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [FailureProbabilityStructureWithErosion],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation]
+ FROM (
+ SELECT *,
+ MaxLength - LENGTH([Id]) AS SuffixPreLength, (
+ SELECT HS.rowid
+ FROM [SOURCEPROJECT].HeightStructureEntity
+ WHERE HS.[HeightStructureEntityId] > [HeightStructureEntityId]
+ AND HS.[Id] IS [Id]
+ AND HS.[FailuremechanismEntityId] = [FailuremechanismEntityId]
+ ) AS Suffix
+ FROM [SOURCEPROJECT].HeightStructureEntity HS
+ JOIN (
+ SELECT MAX(LENGTH([Id])) AS MaxLength
+ FROM [SOURCEPROJECT].HeightStructureEntity
+ )
+ );
+INSERT INTO HeightStructuresCalculationEntity (
+ [HeightStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [HydraulicLocationEntityId],
+ [HeightStructureEntityId],
+ [ForeshoreProfileEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [ModelFactorSuperCriticalFlowMean],
+ [StructureNormalOrientation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FailureProbabilityStructureWithErosion],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [StormDurationMean],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [DeviationWaveDirection],
+ [UseBreakWater],
+ [UseForeshore],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [ShouldIllustrationPointsBeCalculated])
+SELECT
+ [HeightStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [HydraulicLocationEntityId],
+ [HeightStructureEntityId],
+ [ForeshoreProfileEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [ModelFactorSuperCriticalFlowMean],
+ [StructureNormalOrientation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FailureProbabilityStructureWithErosion],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [StormDurationMean],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [DeviationWaveDirection],
+ [UseBreakWater],
+ [UseForeshore],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ 0
+FROM [SOURCEPROJECT].HeightStructuresCalculationEntity;
+INSERT INTO HeightStructuresFailureMechanismMetaEntity (
+ [HeightStructuresFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ [HeightStructureCollectionSourcePath],
+ [ForeshoreProfileCollectionSourcePath])
+SELECT
+ [HeightStructuresFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ CASE
+ WHEN COUNT([HeightStructureEntityId])
+ THEN ""
+ ELSE NULL
+ END,
+ CASE
+ WHEN COUNT([ForeshoreProfileEntityId])
+ THEN ""
+ ELSE NULL
+ END
+ FROM [SOURCEPROJECT].HeightStructuresFailureMechanismMetaEntity
+ LEFT JOIN [SOURCEPROJECT].HeightStructureEntity USING(FailureMechanismEntityId)
+ LEFT JOIN [SOURCEPROJECT].ForeshoreProfileEntity USING(FailureMechanismEntityId)
+ GROUP BY FailureMechanismEntityID;
+INSERT INTO HeightStructuresSectionResultEntity (
+ [HeightStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [HeightStructuresCalculationEntityId],
+ [LayerOne],
+ [LayerThree])
+SELECT
+ [HeightStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [HeightStructuresCalculationEntityId],
+ [LayerOne],
+ CASE
+ WHEN [LayerThree] > 1 OR [LayerThree] < 0
+ THEN NULL
+ ELSE
+ [LayerThree]
+ END
+ FROM [SOURCEPROJECT].HeightStructuresSectionResultEntity;
+INSERT INTO HydraulicLocationEntity (
+ [HydraulicLocationEntityId],
+ [AssessmentSectionEntityId],
+ [LocationId],
+ [Name],
+ [LocationX],
+ [LocationY],
+ [ShouldWaveHeightIllustrationPointsBeCalculated],
+ [ShouldDesignWaterLevelIllustrationPointsBeCalculated],
+ [Order])
+SELECT
+ [HydraulicLocationEntityId],
+ [AssessmentSectionEntityId],
+ [LocationId],
+ [Name],
+ [LocationX],
+ [LocationY],
+ 0,
+ 0,
+ [Order]
+ FROM [SOURCEPROJECT].HydraulicLocationEntity;
+INSERT INTO MacroStabilityInwardsSectionResultEntity (
+ [MacroStabilityInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [LayerOne],
+ [LayerThree])
+SELECT
+ [MacrostabilityInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [LayerOne],
+ CASE
+ WHEN [LayerThree] > 1 OR [LayerThree] < 0
+ THEN NULL
+ ELSE
+ [LayerThree]
+ END
+ FROM [SOURCEPROJECT].MacrostabilityInwardsSectionResultEntity;
+INSERT INTO MacrostabilityOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacrostabilityOutwardsSectionResultEntity;
+INSERT INTO MicrostabilitySectionResultEntity SELECT * FROM [SOURCEPROJECT].MicrostabilitySectionResultEntity;
+INSERT INTO PipingCalculationEntity (
+ [PipingCalculationEntityId],
+ [CalculationGroupEntityId],
+ [SurfaceLineEntityId],
+ [PipingStochasticSoilProfileEntityId],
+ [HydraulicLocationEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [EntryPointL],
+ [ExitPointL],
+ [PhreaticLevelExitMean],
+ [PhreaticLevelExitStandardDeviation],
+ [DampingFactorExitMean],
+ [DampingFactorExitStandardDeviation],
+ [RelevantForScenario],
+ [ScenarioContribution],
+ [AssessmentLevel],
+ [UseAssessmentLevelManualInput])
+SELECT
+ [PipingCalculationEntityId],
+ [CalculationGroupEntityId],
+ [SurfaceLineEntityId],
+ [StochasticSoilProfileEntityId],
+ [HydraulicLocationEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [EntryPointL],
+ [ExitPointL],
+ [PhreaticLevelExitMean],
+ [PhreaticLevelExitStandardDeviation],
+ [DampingFactorExitMean],
+ [DampingFactorExitStandardDeviation],
+ [RelevantForScenario],
+ [ScenarioContribution],
+ [AssessmentLevel],
+ [UseAssessmentLevelManualInput]
+ FROM [SOURCEPROJECT].PipingCalculationEntity;
+INSERT INTO PipingCalculationOutputEntity
+SELECT *
+ FROM [SOURCEPROJECT].PipingCalculationOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 1
+ );
+INSERT INTO PipingFailureMechanismMetaEntity (
+ [PipingFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [A],
+ [WaterVolumetricWeight],
+ [StochasticSoilModelCollectionSourcePath],
+ [SurfaceLineCollectionSourcePath])
+SELECT
+ [PipingFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [A],
+ [WaterVolumetricWeight],
+ [StochasticSoilModelSourcePath],
+ [SurfaceLineSourcePath]
+ FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity;
+INSERT INTO PipingSectionResultEntity (
+ [PipingSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [LayerOne],
+ [LayerThree])
+SELECT
+ [PipingSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [LayerOne],
+ CASE
+ WHEN [LayerThree] > 1 OR [LayerThree] < 0
+ THEN NULL
+ ELSE
+ [LayerThree]
+ END
+ FROM [SOURCEPROJECT].PipingSectionResultEntity;
+INSERT INTO PipingSemiProbabilisticOutputEntity
+SELECT *
+ FROM [SOURCEPROJECT].PipingSemiProbabilisticOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 1
+ );
+INSERT INTO PipingStructureSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingStructureSectionResultEntity;
+INSERT INTO ProjectEntity SELECT * FROM [SOURCEPROJECT].ProjectEntity;
+INSERT INTO PipingSoilLayerEntity (
+ [PipingSoilLayerEntityId],
+ [PipingSoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ [BelowPhreaticLevelMean],
+ [BelowPhreaticLevelDeviation],
+ [BelowPhreaticLevelShift],
+ [DiameterD70Mean],
+ [DiameterD70CoefficientOfVariation],
+ [PermeabilityMean],
+ [PermeabilityCoefficientOfVariation],
+ [Order])
+SELECT
+ [SoilLayerEntityId],
+ [SoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ CASE
+ WHEN [Color] IS 0
+ THEN NULL
+ ELSE
+ [Color]
+ END,
+ [MaterialName],
+ [BelowPhreaticLevelMean],
+ [BelowPhreaticLevelDeviation],
+ [BelowPhreaticLevelShift],
+ [DiameterD70Mean],
+ [DiameterD70CoefficientOfVariation],
+ [PermeabilityMean],
+ [PermeabilityCoefficientOfVariation],
+ [Order]
+ FROM [SOURCEPROJECT].SoilLayerEntity;
+INSERT INTO PipingSoilProfileEntity (
+ [PipingSoilProfileEntityId],
+ [Bottom],
+ [Name],
+ [SourceType])
+SELECT
+ [SoilProfileEntityId],
+ [Bottom],
+ CASE
+ WHEN [Name] IS NULL
+ THEN ""
+ ELSE
+ [Name]
+ END,
+ (
+ SELECT SSP.[Type]
+ FROM [SOURCEPROJECT].StochasticSoilProfileEntity SSP
+ WHERE SSP.SoilProfileEntityId IS SP.SoilProfileEntityId
+ LIMIT 1
+ ) AS [SourceType]
+ FROM [SOURCEPROJECT].SoilProfileEntity SP;
+INSERT INTO StabilityPointStructureEntity (
+ [StabilityPointStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ConstructiveStrengthLinearLoadModelMean],
+ [ConstructiveStrengthLinearLoadModelCoefficientOfVariation],
+ [ConstructiveStrengthQuadraticLoadModelMean],
+ [ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation],
+ [BankWidthMean],
+ [BankWidthStandardDeviation],
+ [InsideWaterLevelFailureConstructionMean],
+ [InsideWaterLevelFailureConstructionStandardDeviation],
+ [EvaluationLevel],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [VerticalDistance],
+ [FailureProbabilityRepairClosure],
+ [FailureCollisionEnergyMean],
+ [FailureCollisionEnergyCoefficientOfVariation],
+ [ShipMassMean],
+ [ShipMassCoefficientOfVariation],
+ [ShipVelocityMean],
+ [ShipVelocityCoefficientOfVariation],
+ [LevellingCount],
+ [ProbabilityCollisionSecondaryStructure],
+ [FlowVelocityStructureClosableMean],
+ [StabilityLinearLoadModelMean],
+ [StabilityLinearLoadModelCoefficientOfVariation],
+ [StabilityQuadraticLoadModelMean],
+ [StabilityQuadraticLoadModelCoefficientOfVariation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [InflowModelType])
+SELECT
+ [StabilityPointStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ CASE
+ WHEN Suffix
+ THEN [Id] || SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength) || Suffix
+ ELSE [Id]
+ END AS [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ConstructiveStrengthLinearLoadModelMean],
+ [ConstructiveStrengthLinearLoadModelCoefficientOfVariation],
+ [ConstructiveStrengthQuadraticLoadModelMean],
+ [ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation],
+ [BankWidthMean],
+ [BankWidthStandardDeviation],
+ [InsideWaterLevelFailureConstructionMean],
+ [InsideWaterLevelFailureConstructionStandardDeviation],
+ [EvaluationLevel],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [VerticalDistance],
+ [FailureProbabilityRepairClosure],
+ [FailureCollisionEnergyMean],
+ [FailureCollisionEnergyCoefficientOfVariation],
+ [ShipMassMean],
+ [ShipMassCoefficientOfVariation],
+ [ShipVelocityMean],
+ [ShipVelocityCoefficientOfVariation],
+ [LevellingCount],
+ [ProbabilityCollisionSecondaryStructure],
+ [FlowVelocityStructureClosableMean],
+ [StabilityLinearLoadModelMean],
+ [StabilityLinearLoadModelCoefficientOfVariation],
+ [StabilityQuadraticLoadModelMean],
+ [StabilityQuadraticLoadModelCoefficientOfVariation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [InflowModelType]
+ FROM (
+ SELECT *,
+ MaxLength - LENGTH([Id]) AS SuffixPreLength,
+ (
+ SELECT SPS.rowid
+ FROM [SOURCEPROJECT].StabilityPointStructureEntity
+ WHERE SPS.[StabilityPointStructureEntityId] > [StabilityPointStructureEntityId]
+ AND SPS.[Id] IS [Id]
+ AND SPS.[FailuremechanismEntityId] = [FailuremechanismEntityId]
+ ) AS Suffix
+ FROM [SOURCEPROJECT].StabilityPointStructureEntity SPS
+ JOIN (
+ SELECT MAX(LENGTH([Id])) AS MaxLength
+ FROM [SOURCEPROJECT].StabilityPointStructureEntity
+ )
+ );
+INSERT INTO StabilityPointStructuresCalculationEntity (
+ [StabilityPointStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [StabilityPointStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ConstructiveStrengthLinearLoadModelMean],
+ [ConstructiveStrengthLinearLoadModelCoefficientOfVariation],
+ [ConstructiveStrengthQuadraticLoadModelMean],
+ [ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation],
+ [BankWidthMean],
+ [BankWidthStandardDeviation],
+ [InsideWaterLevelFailureConstructionMean],
+ [InsideWaterLevelFailureConstructionStandardDeviation],
+ [EvaluationLevel],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [VerticalDistance],
+ [FailureProbabilityRepairClosure],
+ [FailureCollisionEnergyMean],
+ [FailureCollisionEnergyCoefficientOfVariation],
+ [ShipMassMean],
+ [ShipMassCoefficientOfVariation],
+ [ShipVelocityMean],
+ [ShipVelocityCoefficientOfVariation],
+ [LevellingCount],
+ [ProbabilityCollisionSecondaryStructure],
+ [FlowVelocityStructureClosableMean],
+ [StabilityLinearLoadModelMean],
+ [StabilityLinearLoadModelCoefficientOfVariation],
+ [StabilityQuadraticLoadModelMean],
+ [StabilityQuadraticLoadModelCoefficientOfVariation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [InflowModelType],
+ [LoadSchematizationType],
+ [VolumicWeightWater],
+ [StormDurationMean],
+ [ModelFactorSuperCriticalFlowMean],
+ [FactorStormDurationOpenStructure],
+ [DrainCoefficientMean],
+ [FailureProbabilityStructureWithErosion],
+ [ShouldIllustrationPointsBeCalculated])
+SELECT
+ [StabilityPointStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [StabilityPointStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ConstructiveStrengthLinearLoadModelMean],
+ [ConstructiveStrengthLinearLoadModelCoefficientOfVariation],
+ [ConstructiveStrengthQuadraticLoadModelMean],
+ [ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation],
+ [BankWidthMean],
+ [BankWidthStandardDeviation],
+ [InsideWaterLevelFailureConstructionMean],
+ [InsideWaterLevelFailureConstructionStandardDeviation],
+ [EvaluationLevel],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [VerticalDistance],
+ [FailureProbabilityRepairClosure],
+ [FailureCollisionEnergyMean],
+ [FailureCollisionEnergyCoefficientOfVariation],
+ [ShipMassMean],
+ [ShipMassCoefficientOfVariation],
+ [ShipVelocityMean],
+ [ShipVelocityCoefficientOfVariation],
+ [LevellingCount],
+ [ProbabilityCollisionSecondaryStructure],
+ [FlowVelocityStructureClosableMean],
+ [StabilityLinearLoadModelMean],
+ [StabilityLinearLoadModelCoefficientOfVariation],
+ [StabilityQuadraticLoadModelMean],
+ [StabilityQuadraticLoadModelCoefficientOfVariation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [InflowModelType],
+ [LoadSchematizationType],
+ [VolumicWeightWater],
+ [StormDurationMean],
+ [ModelFactorSuperCriticalFlowMean],
+ [FactorStormDurationOpenStructure],
+ [DrainCoefficientMean],
+ [FailureProbabilityStructureWithErosion],
+ 0
+FROM [SOURCEPROJECT].StabilityPointStructuresCalculationEntity;
+INSERT INTO StabilityPointStructuresFailureMechanismMetaEntity (
+ [StabilityPointStructuresFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ [ForeshoreProfileCollectionSourcePath],
+ [StabilityPointStructureCollectionSourcePath])
+SELECT
+ [StrengthStabilityPointConstructionFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ CASE
+ WHEN COUNT([ForeshoreProfileEntityId])
+ THEN ""
+ ELSE NULL
+ END,
+ CASE
+ WHEN COUNT([StabilityPointStructureEntityId])
+ THEN ""
+ ELSE NULL
+ END
+ FROM [SOURCEPROJECT].StabilityPointStructuresFailureMechanismMetaEntity
+ LEFT JOIN [SOURCEPROJECT].ForeshoreProfileEntity USING (FailureMechanismEntityId)
+ LEFT JOIN [SOURCEPROJECT].StabilityPointStructureEntity USING (FailureMechanismEntityId)
+ GROUP BY FailureMechanismEntityId;
+INSERT INTO StabilityPointStructuresSectionResultEntity (
+ [StabilityPointStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [StabilityPointStructuresCalculationEntityId],
+ [LayerOne],
+ [LayerThree])
+SELECT
+ [StabilityPointStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [StabilityPointStructuresCalculationEntityId],
+ [LayerOne],
+ CASE
+ WHEN [LayerThree] > 1 OR [LayerThree] < 0
+ THEN NULL
+ ELSE
+ [LayerThree]
+ END
+ FROM [SOURCEPROJECT].StabilityPointStructuresSectionResultEntity;
+INSERT INTO StabilityStoneCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsCalculationEntity;
+INSERT INTO StabilityStoneCoverFailureMechanismMetaEntity (
+ [FailureMechanismEntityId],
+ [ForeshoreProfileCollectionSourcePath])
+SELECT
+ [FailureMechanismEntityId],
+ CASE
+ WHEN COUNT([ForeshoreProfileEntityId])
+ THEN ""
+ ELSE NULL
+ END
+ FROM [SOURCEPROJECT].FailureMechanismEntity
+ LEFT JOIN [SOURCEPROJECT].ForeshoreProfileEntity USING (FailureMechanismEntityID)
+ WHERE FailureMechanismType = 7
+ GROUP BY FailureMechanismEntityID;
+INSERT INTO StochasticSoilModelEntity (
+ [StochasticSoilModelEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [StochasticSoilModelSegmentPointXml],
+ [Order])
+SELECT
+ [StochasticSoilModelEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [StochasticSoilModelSegmentPointXml],
+ [Order]
+ FROM [SOURCEPROJECT].StochasticSoilModelEntity;
+INSERT INTO PipingStochasticSoilProfileEntity (
+ [PipingStochasticSoilProfileEntityId],
+ [PipingSoilProfileEntityId],
+ [StochasticSoilModelEntityId],
+ [Probability],
+ [Order])
+SELECT
+ [StochasticSoilProfileEntityId],
+ [SoilProfileEntityId],
+ [StochasticSoilModelEntityId],
+ [Probability],
+ [Order]
+ FROM [SOURCEPROJECT].StochasticSoilProfileEntity;
+INSERT INTO StrengthStabilityLengthwiseConstructionSectionResultEntity SELECT * FROM [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity;
+INSERT INTO SurfaceLineEntity (
+ [SurfaceLineEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [ReferenceLineIntersectionX],
+ [ReferenceLineIntersectionY],
+ [PointsXml],
+ [Order])
+SELECT
+ [SurfaceLineEntityId],
+ [FailureMechanismEntityId],
+ CASE
+ WHEN [Name] IS NULL
+ THEN ""
+ ELSE
+ [Name]
+ END,
+ [ReferenceLineIntersectionX],
+ [ReferenceLineIntersectionY],
+ [PointsXml],
+ [Order]
+ FROM [SOURCEPROJECT].SurfaceLineEntity;
+INSERT INTO TechnicalInnovationSectionResultEntity SELECT * FROM [SOURCEPROJECT].TechnicalInnovationSectionResultEntity;
+INSERT INTO VersionEntity (
+ [VersionId],
+ [Version],
+ [Timestamp],
+ [FingerPrint])
+SELECT [VersionId],
+ "17.2",
+ [Timestamp],
+ [FingerPrint]
+ FROM [SOURCEPROJECT].VersionEntity;
+INSERT INTO WaterPressureAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsCalculationEntity;
+INSERT INTO WaveImpactAsphaltCoverFailureMechanismMetaEntity (
+ [FailureMechanismEntityId],
+ [ForeshoreProfileCollectionSourcePath])
+SELECT
+ [FailureMechanismEntityId],
+ CASE
+ WHEN COUNT([ForeshoreProfileEntityId])
+ THEN ""
+ ELSE NULL
+ END
+ FROM [SOURCEPROJECT].FailureMechanismEntity
+ LEFT JOIN [SOURCEPROJECT].ForeshoreProfileEntity USING (FailureMechanismEntityID)
+ WHERE FailureMechanismType = 3
+ GROUP BY FailureMechanismEntityID;
+
+/*
+Outputs that used HydraRing are not migrated
+*/
+-- ClosingStructuresOutputEntity
+-- DuneLocationOutputEntity
+-- GrassCoverErosionInwardsDikeHeightOutputEntity
+-- GrassCoverErosionInwardsOutputEntity
+-- GrassCoverErosionInwardsOvertoppingRateOutputEntity
+-- GrassCoverErosionOutwardsHydraulicLocationOutputEntity
+-- GrassCoverErosionOutwardsWaveConditionsOutputEntity
+-- HeightStructuresOutputEntity
+-- HydraulicLocationOutputEntity
+-- StabilityPointStructuresOutputEntity
+-- StabilityStoneCoverWaveConditionsOutputEntity
+-- WaveImpactAsphaltCoverWaveConditionsOutputEntity
+
+/*
+Insert new data
+*/
+INSERT INTO MacroStabilityInwardsFailureMechanismMetaEntity (
+ [FailureMechanismEntityId],
+ [A])
+SELECT FailureMechanismEntityId,
+ 0.033
+ FROM FailureMechanismEntity WHERE FailureMechanismType = 2;
+
+-- Insert new groups
+INSERT INTO CalculationGroupEntity (
+ [Name],
+ [Order])
+SELECT
+ "Berekeningen",
+ 0
+ FROM FailureMechanismEntity
+ WHERE FailureMechanismType = 2;
+
+-- Create temp table to store the new calculation group ids
+CREATE TEMP TABLE TempCalculationGroupEntity
+(
+ 'CalculationGroupId' INTEGER NOT NULL,
+ 'FailureMechanismId' INTEGER NOT NULL,
+ PRIMARY KEY ('CalculationGroupId', 'FailureMechanismId')
+) WITHOUT ROWID;
+
+-- Store the new calculation group ids
+INSERT INTO TempCalculationGroupEntity (
+ [CalculationGroupId],
+ [FailureMechanismId])
+SELECT
+ last_insert_rowid() - (
+ SELECT COUNT()
+ FROM AssessmentSectionEntity ase
+ WHERE fme.AssessmentSectionEntityId >= ase.AssessmentSectionEntityId
+ ) + 1,
+ FailureMechanismEntityId
+ FROM FailureMechanismEntity fme
+ WHERE fme.FailureMechanismType = 2
+ ORDER BY AssessmentSectionEntityId;
+
+-- Link groups to all Macro (2) failure mechanisms
+UPDATE FailureMechanismEntity
+ SET CalculationGroupEntityId = (
+ SELECT CalculationGroupId
+ FROM TempCalculationGroupEntity
+ WHERE FailureMechanismId = FailureMechanismEntity.FailureMechanismEntityId
+ )
+ WHERE FailureMechanismType = 2;
+
+-- Cleanup
+DROP TABLE TempCalculationGroupEntity;
+
+/*
+Write migration logging
+*/
+ATTACH DATABASE "{1}" AS LOGDATABASE;
+
+CREATE TABLE IF NOT EXISTS [LOGDATABASE].'MigrationLogEntity'
+(
+ 'MigrationLogEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FromVersion' VARCHAR(20) NOT NULL,
+ 'ToVersion' VARCHAR(20) NOT NULL,
+ 'LogMessage' TEXT NOT NULL
+);
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+VALUES ("17.1", "17.2", "Gevolgen van de migratie van versie 17.1 naar versie 17.2:");
+
+CREATE TEMP TABLE TempLogOutputDeleted
+(
+ 'NrDeleted' INTEGER NOT NULL
+);
+
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].ClosingStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].DuneLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsDikeHeightOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsOvertoppingRateOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].HeightStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].HydraulicLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].StabilityPointStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted
+SELECT COUNT()
+ FROM [SOURCEPROJECT].PipingSemiProbabilisticOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 0
+ );
+INSERT INTO TempLogOutputDeleted
+SELECT COUNT()
+ FROM [SOURCEPROJECT].PipingCalculationOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 0
+ );
+
+CREATE TEMP TABLE TempLogOutputRemaining
+(
+ 'NrRemaining' INTEGER NOT NULL
+);
+INSERT INTO TempLogOutputRemaining
+SELECT COUNT()
+ FROM [SOURCEPROJECT].PipingSemiProbabilisticOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 1
+ );
+INSERT INTO TempLogOutputRemaining
+SELECT COUNT()
+ FROM [SOURCEPROJECT].PipingCalculationOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 1
+ );
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT
+ "17.1",
+ "17.2",
+ CASE
+ WHEN [NrRemaining] > 0
+ THEN "* Alle berekende resultaten zijn verwijderd, behalve die van het toetsspoor 'Piping' waarbij de waterstand handmatig is ingevuld."
+ ELSE "* Alle berekende resultaten zijn verwijderd."
+ END
+ FROM TempLogOutputDeleted
+ LEFT JOIN TempLogOutputRemaining
+ WHERE [NrDeleted] > 0
+ LIMIT 1;
+
+DROP TABLE TempLogOutputDeleted;
+DROP TABLE TempLogOutputRemaining;
+
+CREATE TEMP TABLE TempFailureMechanisms
+(
+ 'FailureMechanismType' INTEGER NOT NULL,
+ 'FailureMechanismName' VARCHAR(255) NOT NULL
+);
+
+INSERT INTO TempFailureMechanisms VALUES (1, 'Piping');
+INSERT INTO TempFailureMechanisms VALUES (2, 'Macrostabiliteit binnenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (3, 'Golfklappen op asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (4, 'Grasbekleding erosie buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (5, 'Grasbekleding afschuiven buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (6, 'Grasbekleding erosie kruin en binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (7, 'Stabiliteit steenzetting');
+INSERT INTO TempFailureMechanisms VALUES (8, 'Duinafslag');
+INSERT INTO TempFailureMechanisms VALUES (9, 'Hoogte kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (10, 'Betrouwbaarheid sluiting kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (11, 'Piping bij kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (12, 'Sterkte en stabiliteit puntconstructies');
+INSERT INTO TempFailureMechanisms VALUES (13, 'Macrostabiliteit buitenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (14, 'Microstabiliteit');
+INSERT INTO TempFailureMechanisms VALUES (15, 'Wateroverdruk bij asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (16, 'Grasbekleding afschuiven binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (17, 'Sterkte en stabiliteit langsconstructies');
+INSERT INTO TempFailureMechanisms VALUES (18, 'Technische innovaties');
+
+CREATE TEMP TABLE TempAssessmentSectionChanges
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [Order],
+ [msg]
+);
+
+INSERT INTO TempAssessmentSectionChanges
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ 0,
+ "De ondergrens is gelijk gesteld aan 1/" || CAST(ROUND(CAST(1.0 / [LowerLimitNorm] AS FLOAT)) AS INT) ||
+ CASE
+ WHEN [NormativeNormType] IS 1
+ THEN " (voorheen de waarde van de norm)"
+ ELSE ""
+ END || "."
+ FROM AssessmentSectionEntity
+
+UNION
+
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ 1,
+ "De signaleringswaarde is gelijk gesteld aan 1/" || CAST(ROUND(CAST(1.0 / [SignalingNorm] AS FLOAT)) AS INT) ||
+ CASE
+ WHEN [NormativeNormType] IS 2
+ THEN " (voorheen de waarde van de norm)"
+ ELSE ""
+ END || "."
+ FROM AssessmentSectionEntity
+
+UNION
+
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ 2,
+ "De norm van het dijktraject is gelijk gesteld aan de " ||
+ CASE
+ WHEN [NormativeNormType] IS 1
+ THEN "ondergrens"
+ ELSE "signaleringswaarde"
+ END || "."
+ FROM AssessmentSectionEntity;
+
+CREATE TEMP TABLE TempAssessmentSectionFailureMechanism
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName]
+);
+
+INSERT INTO TempAssessmentSectionFailureMechanism
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ [FailureMechanismEntityId],
+ [FailureMechanismName]
+ FROM AssessmentSectionEntity
+ JOIN FailureMechanismEntity USING (AssessmentSectionEntityId)
+ JOIN TempFailureMechanisms USING (FailureMechanismType);
+
+CREATE TEMP TABLE TempChanges
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg]
+);
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het ID van voorlandprofiel '" || source.[Id] || "' is veranderd naar '" || fp.[Id] || "'."
+ FROM ForeshoreProfileEntity AS fp
+ JOIN [SOURCEPROJECT].ForeshoreProfileEntity AS source ON fp.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fp.[FailureMechanismEntityId]
+ WHERE source.[Id] IS NOT fp.[Id];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het ID van kunstwerk '" || source.[Id] || "' is veranderd naar '" || hs.[Id] || "'."
+ FROM HeightStructureEntity AS hs
+ JOIN [SOURCEPROJECT].HeightStructureEntity AS source ON hs.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = hs.[FailureMechanismEntityId]
+ WHERE source.[Id] IS NOT hs.[Id];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het ID van kunstwerk '" || source.[Id] || "' is veranderd naar '" || cs.[Id] || "'."
+ FROM ClosingStructureEntity AS cs
+ JOIN [SOURCEPROJECT].ClosingStructureEntity AS source ON cs.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = cs.[FailureMechanismEntityId]
+ WHERE source.[Id] IS NOT cs.[Id];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het ID van kunstwerk '" || source.[Id] || "' is veranderd naar '" || sps.[Id] || "'."
+ FROM StabilityPointStructureEntity AS sps
+ JOIN [SOURCEPROJECT].StabilityPointStructureEntity AS source ON sps.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = sps.[FailureMechanismEntityId]
+ WHERE source.[Id] IS NOT sps.[Id];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het geregistreerde resultaat voor de toets op maat in '" || fms.[Name] || "' ('" || source.[LayerThree] || "') kon niet worden geconverteerd naar een geldige kans en is verwijderd."
+ FROM PipingSectionResultEntity as psr
+ JOIN [SOURCEPROJECT].PipingSectionResultEntity AS source ON psr.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = psr.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL AND psr.[LayerThree] IS NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het geregistreerde resultaat voor de toets op maat in '" || fms.[Name] || "' ('" || source.[LayerThree] || "') kon niet worden geconverteerd naar een geldige kans en is verwijderd."
+ FROM GrassCoverErosionInwardsSectionResultEntity as gceisr
+ JOIN [SOURCEPROJECT].GrassCoverErosionInwardsSectionResultEntity AS source ON gceisr.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = gceisr.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL AND gceisr.[LayerThree] IS NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het geregistreerde resultaat voor de toets op maat in '" || fms.[Name] || "' ('" || source.[LayerThree] || "') kon niet worden geconverteerd naar een geldige kans en is verwijderd."
+ FROM ClosingStructuresSectionResultEntity as cssr
+ JOIN [SOURCEPROJECT].ClosingStructuresSectionResultEntity AS source ON cssr.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = cssr.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL AND cssr.[LayerThree] IS NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het geregistreerde resultaat voor de toets op maat in '" || fms.[Name] || "' ('" || source.[LayerThree] || "') kon niet worden geconverteerd naar een geldige kans en is verwijderd."
+ FROM HeightStructuresSectionResultEntity as hssr
+ JOIN [SOURCEPROJECT].HeightStructuresSectionResultEntity AS source ON hssr.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = hssr.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL AND hssr.[LayerThree] IS NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het geregistreerde resultaat voor de toets op maat in '" || fms.[Name] || "' ('" || source.[LayerThree] || "') kon niet worden geconverteerd naar een geldige kans en is verwijderd."
+ FROM StabilityPointStructuresSectionResultEntity as spssr
+ JOIN [SOURCEPROJECT].StabilityPointStructuresSectionResultEntity AS source ON spssr.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = spssr.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL AND spssr.[LayerThree] IS NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Het geregistreerde resultaat voor de toets op maat in '" || fms.[Name] || "' ('" || source.[LayerThree] || "') kon niet worden geconverteerd naar een geldige kans en is verwijderd."
+ FROM MacroStabilityInwardsSectionResultEntity as msisr
+ JOIN [SOURCEPROJECT].MacroStabilityInwardsSectionResultEntity AS source ON msisr.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = msisr.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL AND msisr.[LayerThree] IS NULL;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+WITH RECURSIVE
+FailureMechanismMessages
+(
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ [level]
+) AS (
+SELECT DISTINCT
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ NULL,
+ 1
+ FROM TempChanges
+ UNION
+SELECT
+ [FailureMechanismId],
+ NULL,
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ 2
+ FROM TempChanges
+ WHERE TempChanges.[FailureMechanismId] IS [FailureMechanismId]
+ ORDER BY [FailureMechanismId], [AssessmentSectionId]
+),
+AssessmentSectionFailureMechanismMessages
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [IsAssessmentSectionHeader],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg],
+ [level],
+ [Order]
+) AS (
+ SELECT DISTINCT
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ 1,
+ NULL,
+ NULL,
+ NULL,
+ 1,
+ 0
+ FROM
+ (
+ SELECT
+ [AssessmentSectionId],
+ [AssessmentSectionName]
+ FROM TempAssessmentSectionChanges
+ UNION
+ SELECT
+ [AssessmentSectionId],
+ [AssessmentSectionName]
+ FROM FailureMechanismMessages
+ WHERE [AssessmentSectionId] IS NOT NULL
+ )
+
+ UNION
+
+ SELECT
+ *
+ FROM
+ (
+ SELECT
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ 0 AS [IsAssessmentSectionHeader],
+ NULL AS [FailureMechanismId],
+ NULL,
+ [msg],
+ 1 AS [level],
+ [Order]
+ FROM TempAssessmentSectionChanges
+
+ UNION
+
+ SELECT
+ [AssessmentSectionId],
+ NULL,
+ 0 AS [IsAssessmentSectionHeader],
+ fmm.[FailureMechanismId] AS [FailureMechanismId],
+ fmm.[FailureMechanismName],
+ [msg],
+ fmm.[level] AS [level],
+ 1 AS [Order]
+ FROM FailureMechanismMessages AS fmm
+ WHERE fmm.[AssessmentSectionId] IS [AssessmentSectionId]
+
+ ) ORDER BY [AssessmentSectionId], [FailureMechanismId], [level], [IsAssessmentSectionHeader] DESC, [Order]
+)
+SELECT
+ "17.1",
+ "17.2",
+ CASE
+ WHEN [AssessmentSectionName] IS NOT NULL
+ THEN
+ CASE WHEN [IsAssessmentSectionHeader] IS 1
+ THEN "* Traject: '" || [AssessmentSectionName] || "'"
+ ELSE
+ " + " || [msg]
+ END
+ ELSE
+ CASE
+ WHEN [FailureMechanismName] IS NOT NULL
+ THEN " + Toetsspoor: '" || [FailureMechanismName] || "'"
+ ELSE
+ " - " || [msg]
+ END
+ END
+FROM AssessmentSectionFailureMechanismMessages;
+
+DROP TABLE TempAssessmentSectionChanges;
+DROP TABLE TempFailureMechanisms;
+DROP TABLE TempAssessmentReturnPeriod;
+DROP TABLE TempAssessmentSectionFailureMechanism;
+DROP TABLE TempChanges;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "17.1",
+ "17.2",
+ "* Geen aanpassingen."
+ WHERE (
+ SELECT COUNT() FROM [LOGDATABASE].MigrationLogEntity
+ WHERE [FromVersion] = "17.1"
+ ) IS 1;
+
+DETACH LOGDATABASE;
+
+DETACH SOURCEPROJECT;
+
+PRAGMA foreign_keys = ON;
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.2_17.3.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.2_17.3.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.2_17.3.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,178 @@
+/*
+Migration script for migrating Ringtoets databases.
+SourceProject version: 17.2
+TargetProject version: 17.3
+*/
+PRAGMA foreign_keys = OFF;
+
+ATTACH DATABASE "{0}" AS SOURCEPROJECT;
+
+INSERT INTO AssessmentSectionEntity SELECT * FROM [SOURCEPROJECT].AssessmentSectionEntity;
+INSERT INTO BackgroundDataEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataEntity;
+INSERT INTO BackgroundDataMetaEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataMetaEntity;
+INSERT INTO CalculationGroupEntity SELECT * FROM [SOURCEPROJECT].CalculationGroupEntity;
+INSERT INTO ClosingStructureEntity SELECT * FROM [SOURCEPROJECT].ClosingStructureEntity;
+INSERT INTO ClosingStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresCalculationEntity;
+INSERT INTO ClosingStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresFailureMechanismMetaEntity;
+INSERT INTO ClosingStructuresOutputEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresOutputEntity;
+INSERT INTO ClosingStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresSectionResultEntity;
+INSERT INTO DikeProfileEntity SELECT * FROM [SOURCEPROJECT].DikeProfileEntity;
+INSERT INTO DuneErosionFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].DuneErosionFailureMechanismMetaEntity;
+INSERT INTO DuneErosionSectionResultEntity SELECT * FROM [SOURCEPROJECT].DuneErosionSectionResultEntity;
+INSERT INTO DuneLocationEntity SELECT * FROM [SOURCEPROJECT].DuneLocationEntity;
+INSERT INTO DuneLocationOutputEntity SELECT * FROM [SOURCEPROJECT].DuneLocationOutputEntity;
+INSERT INTO FailureMechanismEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismEntity;
+INSERT INTO FailureMechanismSectionEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismSectionEntity;
+INSERT INTO FaultTreeIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].FaultTreeIllustrationPointEntity;
+INSERT INTO FaultTreeIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].FaultTreeIllustrationPointStochastEntity;
+INSERT INTO FaultTreeSubmechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].FaultTreeSubmechanismIllustrationPointEntity;
+INSERT INTO ForeshoreProfileEntity SELECT * FROM [SOURCEPROJECT].ForeshoreProfileEntity;
+INSERT INTO GeneralResultFaultTreeIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].GeneralResultFaultTreeIllustrationPointEntity;
+INSERT INTO GeneralResultFaultTreeIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].GeneralResultFaultTreeIllustrationPointStochastEntity;
+INSERT INTO GeneralResultSubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].GeneralResultSubMechanismIllustrationPointEntity;
+INSERT INTO GeneralResultSubMechanismIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].GeneralResultSubMechanismIllustrationPointStochastEntity;
+INSERT INTO GrassCoverErosionInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity;
+INSERT INTO GrassCoverErosionInwardsDikeHeightOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsDikeHeightOutputEntity;
+INSERT INTO GrassCoverErosionInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionInwardsOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsOutputEntity;
+INSERT INTO GrassCoverErosionInwardsOvertoppingRateOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsOvertoppingRateOutputEntity;
+INSERT INTO GrassCoverErosionInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionOutwardsHydraulicLocationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationEntity;
+INSERT INTO GrassCoverErosionOutwardsHydraulicLocationOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationOutputEntity;
+INSERT INTO GrassCoverErosionOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsCalculationEntity;
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsOutputEntity;
+INSERT INTO GrassCoverSlipOffInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity;
+INSERT INTO GrassCoverSlipOffOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity;
+INSERT INTO HeightStructureEntity SELECT * FROM [SOURCEPROJECT].HeightStructureEntity;
+INSERT INTO HeightStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresCalculationEntity;
+INSERT INTO HeightStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresFailureMechanismMetaEntity;
+INSERT INTO HeightStructuresOutputEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresOutputEntity;
+INSERT INTO HeightStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresSectionResultEntity;
+INSERT INTO HydraulicLocationEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationEntity;
+INSERT INTO HydraulicLocationOutputEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationOutputEntity;
+INSERT INTO IllustrationPointResultEntity SELECT * FROM [SOURCEPROJECT].IllustrationPointResultEntity;
+INSERT INTO MacroStabilityInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationEntity;
+INSERT INTO MacroStabilityInwardsCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCharacteristicPointEntity;
+INSERT INTO MacroStabilityInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsFailureMechanismMetaEntity;
+INSERT INTO MacroStabilityInwardsPreconsolidationStressEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsPreconsolidationStressEntity;
+INSERT INTO MacroStabilityInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSectionResultEntity;
+INSERT INTO MacroStabilityInwardsSoilLayerOneDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilLayerOneDEntity;
+INSERT INTO MacroStabilityInwardsSoilLayerTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilLayerTwoDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileOneDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileOneDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileTwoDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity;
+INSERT INTO MacroStabilityInwardsStochasticSoilProfileEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsStochasticSoilProfileEntity;
+INSERT INTO MacrostabilityOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacrostabilityOutwardsSectionResultEntity;
+INSERT INTO MicrostabilitySectionResultEntity SELECT * FROM [SOURCEPROJECT].MicrostabilitySectionResultEntity;
+INSERT INTO PipingCalculationEntity SELECT * FROM [SOURCEPROJECT].PipingCalculationEntity;
+INSERT INTO PipingCalculationOutputEntity SELECT * FROM [SOURCEPROJECT].PipingCalculationOutputEntity;
+INSERT INTO PipingCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].PipingCharacteristicPointEntity;
+INSERT INTO PipingFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity;
+INSERT INTO PipingSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingSectionResultEntity;
+INSERT INTO PipingSemiProbabilisticOutputEntity SELECT * FROM [SOURCEPROJECT].PipingSemiProbabilisticOutputEntity;
+INSERT INTO PipingSoilLayerEntity SELECT * FROM [SOURCEPROJECT].PipingSoilLayerEntity;
+INSERT INTO PipingSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingSoilProfileEntity;
+INSERT INTO PipingStochasticSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingStochasticSoilProfileEntity;
+INSERT INTO PipingStructureSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingStructureSectionResultEntity;
+INSERT INTO ProjectEntity SELECT * FROM [SOURCEPROJECT].ProjectEntity;
+INSERT INTO StabilityPointStructureEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructureEntity;
+INSERT INTO StabilityPointStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresCalculationEntity;
+INSERT INTO StabilityPointStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresFailureMechanismMetaEntity;
+INSERT INTO StabilityPointStructuresOutputEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresOutputEntity;
+INSERT INTO StabilityPointStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresSectionResultEntity;
+INSERT INTO StabilityStoneCoverFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverFailureMechanismMetaEntity;
+INSERT INTO StabilityStoneCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsCalculationEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsOutputEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsOutputEntity;
+INSERT INTO StochastEntity SELECT * FROM [SOURCEPROJECT].StochastEntity;
+INSERT INTO StochasticSoilModelEntity SELECT * FROM [SOURCEPROJECT].StochasticSoilModelEntity;
+INSERT INTO StrengthStabilityLengthwiseConstructionSectionResultEntity SELECT * FROM [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity;
+INSERT INTO SubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].SubMechanismIllustrationPointEntity;
+INSERT INTO SubMechanismIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].SubMechanismIllustrationPointStochastEntity;
+INSERT INTO SurfaceLineEntity SELECT * FROM [SOURCEPROJECT].SurfaceLineEntity;
+INSERT INTO TechnicalInnovationSectionResultEntity SELECT * FROM [SOURCEPROJECT].TechnicalInnovationSectionResultEntity;
+INSERT INTO TopLevelFaultTreeIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].TopLevelFaultTreeIllustrationPointEntity;
+INSERT INTO TopLevelSubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].TopLevelSubMechanismIllustrationPointEntity;
+INSERT INTO VersionEntity (
+ [VersionId],
+ [Version],
+ [Timestamp],
+ [FingerPrint])
+SELECT [VersionId],
+ "17.3",
+ [Timestamp],
+ [FingerPrint]
+FROM [SOURCEPROJECT].VersionEntity;
+INSERT INTO WaterPressureAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverFailureMechanismMetaEntity;
+INSERT INTO WaveImpactAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsCalculationEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsOutputEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsOutputEntity;
+
+/*
+Following outputs are not migrated:
+*/
+--MacroStabilityInwardsCalculationOutputEntity
+--MacroStabilityInwardsSemiProbabilisticOutputEntity
+
+/*
+Write migration logging
+*/
+ATTACH DATABASE "{1}" AS LOGDATABASE;
+
+CREATE TABLE IF NOT EXISTS [LOGDATABASE].'MigrationLogEntity'
+(
+ 'MigrationLogEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FromVersion' VARCHAR(20) NOT NULL,
+ 'ToVersion' VARCHAR(20) NOT NULL,
+ 'LogMessage' TEXT NOT NULL
+);
+
+CREATE TEMP TABLE TempLogOutputDeleted
+(
+ 'NrDeleted' INTEGER NOT NULL
+);
+INSERT INTO TempLogOutputDeleted
+SELECT COUNT()
+FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationOutputEntity;
+
+INSERT INTO TempLogOutputDeleted
+SELECT COUNT()
+FROM [SOURCEPROJECT].MacroStabilityInwardsSemiProbabilisticOutputEntity;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+VALUES ("17.2", "17.3", "Gevolgen van de migratie van versie 17.2 naar versie 17.3:");
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "17.2",
+ "17.3",
+ "* Alle berekende resultaten van het toetsspoor 'Macrostabiliteit binnenwaarts' zijn verwijderd."
+ FROM TempLogOutputDeleted
+ WHERE [NrDeleted] > 0
+ LIMIT 1;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "17.2",
+ "17.3",
+ "* Geen aanpassingen."
+ WHERE (
+ SELECT COUNT() FROM [LOGDATABASE].MigrationLogEntity
+ WHERE [FromVersion] = "17.2"
+ ) IS 1;
+
+DETACH LOGDATABASE;
+
+DETACH SOURCEPROJECT;
+
+PRAGMA foreign_keys = ON;
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,2835 @@
+ /*
+Migration script for migrating Ringtoets databases.
+SourceProject version: 17.3
+TargetProject version: 18.1
+*/
+PRAGMA foreign_keys = OFF;
+
+ATTACH DATABASE "{0}" AS SOURCEPROJECT;
+
+INSERT INTO BackgroundDataEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataEntity;
+INSERT INTO BackgroundDataMetaEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataMetaEntity;
+INSERT INTO CalculationGroupEntity SELECT * FROM [SOURCEPROJECT].CalculationGroupEntity;
+INSERT INTO ClosingStructureEntity (
+ [ClosingStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ [IdenticalApertures],
+ [FailureProbabilityReparation],
+ [InflowModelType])
+SELECT
+ [ClosingStructureEntityId],
+ [FailureMechanismEntityId],
+ [Order],
+ [Name],
+ [Id],
+ [X],
+ [Y],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ CASE
+ WHEN [ProbabilityOrFrequencyOpenStructureBeforeFlooding] > 1
+ THEN NULL
+ ELSE
+ [ProbabilityOrFrequencyOpenStructureBeforeFlooding]
+ END,
+ [FailureProbabilityOpenStructure],
+ CASE
+ WHEN [IdenticalApertures] < 1
+ THEN 1
+ ELSE
+ [IdenticalApertures]
+ END,
+ [FailureProbabilityReparation],
+ [InflowModelType]
+FROM [SOURCEPROJECT].ClosingStructureEntity;
+INSERT INTO ClosingStructuresCalculationEntity (
+ [ClosingStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [ClosingStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ [IdenticalApertures],
+ [FailureProbabilityReparation],
+ [InflowModelType],
+ [FailureProbabilityStructureWithErosion],
+ [DeviationWaveDirection],
+ [DrainCoefficientMean],
+ [ModelFactorSuperCriticalFlowMean],
+ [StormDurationMean],
+ [FactorStormDurationOpenStructure],
+ [ShouldIllustrationPointsBeCalculated])
+SELECT
+ [ClosingStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [ClosingStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [LevelCrestStructureNotClosingMean],
+ [LevelCrestStructureNotClosingStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ProbabilityOrFrequencyOpenStructureBeforeFlooding],
+ [FailureProbabilityOpenStructure],
+ CASE
+ WHEN [IdenticalApertures] < 1
+ THEN 1
+ ELSE
+ [IdenticalApertures]
+ END,
+ [FailureProbabilityReparation],
+ [InflowModelType],
+ [FailureProbabilityStructureWithErosion],
+ [DeviationWaveDirection],
+ [DrainCoefficientMean],
+ [ModelFactorSuperCriticalFlowMean],
+ [StormDurationMean],
+ [FactorStormDurationOpenStructure],
+ [ShouldIllustrationPointsBeCalculated]
+ FROM [SOURCEPROJECT].ClosingStructuresCalculationEntity;
+INSERT INTO ClosingStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresFailureMechanismMetaEntity;
+INSERT INTO ClosingStructuresSectionResultEntity (
+ [ClosingStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [ClosingStructuresCalculationEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyProbability])
+SELECT
+ [ClosingStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [ClosingStructuresCalculationEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ CASE
+ WHEN [LayerThree] IS NOT NULL
+ THEN 3
+ ELSE
+ 1
+ END,
+ [LayerThree],
+ 0,
+ NULL
+FROM [SOURCEPROJECT].ClosingStructuresSectionResultEntity;
+INSERT INTO DikeProfileEntity (
+ [DikeProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [ForeshoreXml],
+ [DikeGeometryXml],
+ [DikeHeight],
+ [X],
+ [Y],
+ [X0],
+ [Order])
+SELECT
+ [DikeProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ REPLACE(
+ REPLACE(ForeshoreXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point2DXmlSerializer.SerializablePoint2D',
+ 'SerializablePoint2D'
+ ),
+ REPLACE(
+ REPLACE(DikeGeometryXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'RoughnessPointXmlSerializer.SerializableRoughnessPoint',
+ 'SerializableRoughnessPoint'
+ ),
+ [DikeHeight],
+ [X],
+ [Y],
+ [X0],
+ [Order]
+FROM [SOURCEPROJECT].DikeProfileEntity;
+INSERT INTO DuneErosionSectionResultEntity (
+ [DuneErosionSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResultForFactorizedSignalingNorm],
+ [DetailedAssessmentResultForSignalingNorm],
+ [DetailedAssessmentResultForMechanismSpecificLowerLimitNorm],
+ [DetailedAssessmentResultForLowerLimitNorm],
+ [DetailedAssessmentResultForFactorizedLowerLimitNorm],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [DuneErosionSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [LayerOne],
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].DuneErosionSectionResultEntity;
+INSERT INTO DuneLocationEntity SELECT * FROM [SOURCEPROJECT].DuneLocationEntity;
+INSERT INTO FailureMechanismEntity (
+ [FailureMechanismEntityId],
+ [AssessmentSectionEntityId],
+ [CalculationGroupEntityId],
+ [FailureMechanismType],
+ [IsRelevant],
+ [FailureMechanismSectionCollectionSourcePath],
+ [InputComments],
+ [OutputComments],
+ [NotRelevantComments])
+SELECT
+ [FailureMechanismEntityId],
+ [AssessmentSectionEntityId],
+ [CalculationGroupEntityId],
+ [FailureMechanismType],
+ [IsRelevant],
+ CASE WHEN COUNT([FailureMechanismSectionEntityId]) THEN "" ELSE NULL END,
+ [InputComments],
+ [OutputComments],
+ [NotRelevantComments]
+FROM [SOURCEPROJECT].FailureMechanismEntity
+LEFT JOIN [SOURCEPROJECT].FailureMechanismSectionEntity USING (FailureMechanismEntityId)
+GROUP BY FailureMechanismEntityId;
+INSERT INTO FailureMechanismSectionEntity (
+ [FailureMechanismSectionEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [FailureMechanismSectionPointXml])
+SELECT
+ [FailureMechanismSectionEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ REPLACE(
+ REPLACE(FailureMechanismSectionPointXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point2DXmlSerializer.SerializablePoint2D',
+ 'SerializablePoint2D'
+ )
+FROM [SOURCEPROJECT].FailureMechanismSectionEntity;
+INSERT INTO ForeshoreProfileEntity (
+ [ForeshoreProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [GeometryXml],
+ [X],
+ [Y],
+ [X0],
+ [Order])
+SELECT
+ [ForeshoreProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ REPLACE(
+ REPLACE(GeometryXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point2DXmlSerializer.SerializablePoint2D',
+ 'SerializablePoint2D'
+ ),
+ [X],
+ [Y],
+ [X0],
+ [Order]
+FROM [SOURCEPROJECT].ForeshoreProfileEntity;
+INSERT INTO GrassCoverErosionInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity;
+INSERT INTO GrassCoverErosionInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionInwardsSectionResultEntity (
+ [GrassCoverErosionInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyProbability])
+SELECT
+ [GrassCoverErosionInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [LayerOne],
+ 1,
+ CASE
+ WHEN [LayerThree] IS NOT NULL
+ THEN 3
+ ELSE
+ 1
+ END,
+ [LayerThree],
+ 0,
+ NULL
+FROM [SOURCEPROJECT].GrassCoverErosionInwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsSectionResultEntity (
+ [GrassCoverErosionOutwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResultForFactorizedSignalingNorm],
+ [DetailedAssessmentResultForSignalingNorm],
+ [DetailedAssessmentResultForMechanismSpecificLowerLimitNorm],
+ [DetailedAssessmentResultForLowerLimitNorm],
+ [DetailedAssessmentResultForFactorizedLowerLimitNorm],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [GrassCoverErosionOutwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity;
+INSERT INTO GrassCoverSlipOffInwardsSectionResultEntity (
+ [GrassCoverSlipOffInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [GrassCoverSlipOffInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity;
+INSERT INTO GrassCoverSlipOffOutwardsSectionResultEntity (
+ [GrassCoverSlipOffOutwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [GrassCoverSlipOffOutwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity;
+INSERT INTO HeightStructureEntity SELECT * FROM [SOURCEPROJECT].HeightStructureEntity;
+INSERT INTO HeightStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresCalculationEntity;
+INSERT INTO HeightStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresFailureMechanismMetaEntity;
+INSERT INTO HeightStructuresSectionResultEntity (
+ [HeightStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [HeightStructuresCalculationEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyProbability])
+SELECT
+ [HeightStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [HeightStructuresCalculationEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ CASE
+ WHEN [LayerThree] IS NOT NULL
+ THEN 3
+ ELSE
+ 1
+ END,
+ [LayerThree],
+ 0,
+ NULL
+FROM [SOURCEPROJECT].HeightStructuresSectionResultEntity;
+INSERT INTO HydraulicLocationEntity (
+ [HydraulicLocationEntityId],
+ [AssessmentSectionEntityId],
+ [LocationId],
+ [Name],
+ [LocationX],
+ [LocationY],
+ [Order])
+SELECT
+ [HydraulicLocationEntityId],
+ [AssessmentSectionEntityId],
+ [LocationId],
+ [Name],
+ [LocationX],
+ [LocationY],
+ [Order]
+FROM [SOURCEPROJECT].HydraulicLocationEntity;
+INSERT INTO IllustrationPointResultEntity SELECT * FROM [SOURCEPROJECT].IllustrationPointResultEntity;
+INSERT INTO MacroStabilityInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationEntity;
+INSERT INTO MacroStabilityInwardsCalculationOutputEntity (
+ [MacroStabilityInwardsCalculationOutputEntityId],
+ [MacroStabilityInwardsCalculationEntityId],
+ [FactorOfStability],
+ [ZValue],
+ [ForbiddenZonesXEntryMin],
+ [ForbiddenZonesXEntryMax],
+ [SlidingCurveLeftSlidingCircleCenterX],
+ [SlidingCurveLeftSlidingCircleCenterY],
+ [SlidingCurveLeftSlidingCircleRadius],
+ [SlidingCurveLeftSlidingCircleIsActive],
+ [SlidingCurveLeftSlidingCircleNonIteratedForce],
+ [SlidingCurveLeftSlidingCircleIteratedForce],
+ [SlidingCurveLeftSlidingCircleDrivingMoment],
+ [SlidingCurveLeftSlidingCircleResistingMoment],
+ [SlidingCurveRightSlidingCircleCenterX],
+ [SlidingCurveRightSlidingCircleCenterY],
+ [SlidingCurveRightSlidingCircleRadius],
+ [SlidingCurveRightSlidingCircleIsActive],
+ [SlidingCurveRightSlidingCircleNonIteratedForce],
+ [SlidingCurveRightSlidingCircleIteratedForce],
+ [SlidingCurveRightSlidingCircleDrivingMoment],
+ [SlidingCurveRightSlidingCircleResistingMoment],
+ [SlidingCurveNonIteratedHorizontalForce],
+ [SlidingCurveIteratedHorizontalForce],
+ [SlidingCurveSliceXML],
+ [SlipPlaneLeftGridXLeft],
+ [SlipPlaneLeftGridXRight],
+ [SlipPlaneLeftGridNrOfHorizontalPoints],
+ [SlipPlaneLeftGridZTop],
+ [SlipPlaneLeftGridZBottom],
+ [SlipPlaneLeftGridNrOfVerticalPoints],
+ [SlipPlaneRightGridXLeft],
+ [SlipPlaneRightGridXRight],
+ [SlipPlaneRightGridNrOfHorizontalPoints],
+ [SlipPlaneRightGridZTop],
+ [SlipPlaneRightGridZBottom],
+ [SlipPlaneRightGridNrOfVerticalPoints],
+ [SlipPlaneTangentLinesXml])
+SELECT
+ [MacroStabilityInwardsCalculationOutputEntityId],
+ [MacroStabilityInwardsCalculationEntityId],
+ [FactorOfStability],
+ [ZValue],
+ [ForbiddenZonesXEntryMin],
+ [ForbiddenZonesXEntryMax],
+ [SlidingCurveLeftSlidingCircleCenterX],
+ [SlidingCurveLeftSlidingCircleCenterY],
+ [SlidingCurveLeftSlidingCircleRadius],
+ [SlidingCurveLeftSlidingCircleIsActive],
+ [SlidingCurveLeftSlidingCircleNonIteratedForce],
+ [SlidingCurveLeftSlidingCircleIteratedForce],
+ [SlidingCurveLeftSlidingCircleDrivingMoment],
+ [SlidingCurveLeftSlidingCircleResistingMoment],
+ [SlidingCurveRightSlidingCircleCenterX],
+ [SlidingCurveRightSlidingCircleCenterY],
+ [SlidingCurveRightSlidingCircleRadius],
+ [SlidingCurveRightSlidingCircleIsActive],
+ [SlidingCurveRightSlidingCircleNonIteratedForce],
+ [SlidingCurveRightSlidingCircleIteratedForce],
+ [SlidingCurveRightSlidingCircleDrivingMoment],
+ [SlidingCurveRightSlidingCircleResistingMoment],
+ [SlidingCurveNonIteratedHorizontalForce],
+ [SlidingCurveIteratedHorizontalForce],
+ REPLACE(
+ REPLACE(SlidingCurveSliceXML, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'MacroStabilityInwardsSliceXmlSerializer.SerializableMacroStabilityInwardsSlice',
+ 'SerializableMacroStabilityInwardsSlice'
+ ),
+ [SlipPlaneLeftGridXLeft],
+ [SlipPlaneLeftGridXRight],
+ [SlipPlaneLeftGridNrOfHorizontalPoints],
+ [SlipPlaneLeftGridZTop],
+ [SlipPlaneLeftGridZBottom],
+ [SlipPlaneLeftGridNrOfVerticalPoints],
+ [SlipPlaneRightGridXLeft],
+ [SlipPlaneRightGridXRight],
+ [SlipPlaneRightGridNrOfHorizontalPoints],
+ [SlipPlaneRightGridZTop],
+ [SlipPlaneRightGridZBottom],
+ [SlipPlaneRightGridNrOfVerticalPoints],
+ REPLACE(
+ REPLACE(SlipPlaneTangentLinesXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'TangentLinesXmlSerializer.SerializableTangentLine',
+ 'SerializableTangentLine'
+ )
+FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationOutputEntity
+JOIN [SOURCEPROJECT].MacroStabilityInwardsCalculationEntity USING(MacroStabilityInwardsCalculationEntityId)
+WHERE [UseAssessmentLevelManualInput] = 1;
+INSERT INTO MacroStabilityInwardsCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCharacteristicPointEntity;
+INSERT INTO MacroStabilityInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsFailureMechanismMetaEntity;
+INSERT INTO MacroStabilityInwardsPreconsolidationStressEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsPreconsolidationStressEntity;
+INSERT INTO MacroStabilityInwardsSectionResultEntity (
+ [MacroStabilityInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyProbability])
+SELECT
+ [MacroStabilityInwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ CASE
+ WHEN [LayerThree] IS NOT NULL
+ THEN 3
+ ELSE
+ 1
+ END,
+ [LayerThree],
+ 0,
+ NULL
+FROM [SOURCEPROJECT].MacroStabilityInwardsSectionResultEntity;
+INSERT INTO MacroStabilityInwardsSoilLayerOneDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilLayerOneDEntity;
+INSERT INTO MacroStabilityInwardsSoilLayerTwoDEntity (
+ [MacroStabilityInwardsSoilLayerTwoDEntityId],
+ [ParentMacroStabilityInwardsSoilLayerTwoDEntityId],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ [ShearStrengthModel],
+ [UsePop],
+ [AbovePhreaticLevelMean],
+ [AbovePhreaticLevelCoefficientOfVariation],
+ [AbovePhreaticLevelShift],
+ [BelowPhreaticLevelMean],
+ [BelowPhreaticLevelCoefficientOfVariation],
+ [BelowPhreaticLevelShift],
+ [CohesionMean],
+ [CohesionCoefficientOfVariation],
+ [FrictionAngleMean],
+ [FrictionAngleCoefficientOfVariation],
+ [ShearStrengthRatioMean],
+ [ShearStrengthRatioCoefficientOfVariation],
+ [StrengthIncreaseExponentMean],
+ [StrengthIncreaseExponentCoefficientOfVariation],
+ [PopMean],
+ [PopCoefficientOfVariation],
+ [OuterRingXml],
+ [Order])
+SELECT
+ [MacroStabilityInwardsSoilLayerTwoDEntityId],
+ [ParentMacroStabilityInwardsSoilLayerTwoDEntityId],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ [ShearStrengthModel],
+ [UsePop],
+ [AbovePhreaticLevelMean],
+ [AbovePhreaticLevelCoefficientOfVariation],
+ [AbovePhreaticLevelShift],
+ [BelowPhreaticLevelMean],
+ [BelowPhreaticLevelCoefficientOfVariation],
+ [BelowPhreaticLevelShift],
+ [CohesionMean],
+ [CohesionCoefficientOfVariation],
+ [FrictionAngleMean],
+ [FrictionAngleCoefficientOfVariation],
+ [ShearStrengthRatioMean],
+ [ShearStrengthRatioCoefficientOfVariation],
+ [StrengthIncreaseExponentMean],
+ [StrengthIncreaseExponentCoefficientOfVariation],
+ [PopMean],
+ [PopCoefficientOfVariation],
+ REPLACE(
+ REPLACE(OuterRingXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point2DXmlSerializer.SerializablePoint2D',
+ 'SerializablePoint2D'
+ ),
+ [Order]
+FROM [SOURCEPROJECT].MacroStabilityInwardsSoilLayerTwoDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileOneDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileOneDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileTwoDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity;
+INSERT INTO MacroStabilityInwardsStochasticSoilProfileEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsStochasticSoilProfileEntity;
+INSERT INTO MacroStabilityOutwardsSectionResultEntity (
+ [MacroStabilityOutwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [DetailedAssessmentProbability],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [MacroStabilityOutwardsSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ [LayerTwoA],
+ 1,
+ NULL,
+ 0,
+ 1
+FROM [SOURCEPROJECT].MacroStabilityOutwardsSectionResultEntity;
+INSERT INTO MicrostabilitySectionResultEntity (
+ [MicrostabilitySectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [MicrostabilitySectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].MicrostabilitySectionResultEntity;
+INSERT INTO PipingCalculationEntity SELECT * FROM [SOURCEPROJECT].PipingCalculationEntity;
+INSERT INTO PipingCalculationOutputEntity
+SELECT *
+ FROM [SOURCEPROJECT].PipingCalculationOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 1
+ );
+INSERT INTO PipingCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].PipingCharacteristicPointEntity;
+INSERT INTO PipingFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity;
+INSERT INTO PipingSectionResultEntity (
+ [PipingSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyProbability])
+SELECT
+ [PipingSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ CASE
+ WHEN [LayerThree] IS NOT NULL
+ THEN 3
+ ELSE
+ 1
+ END,
+ [LayerThree],
+ 0,
+ NULL
+FROM [SOURCEPROJECT].PipingSectionResultEntity;
+INSERT INTO PipingSoilLayerEntity(
+ [PipingSoilLayerEntityId],
+ [PipingSoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ [BelowPhreaticLevelMean] ,
+ [BelowPhreaticLevelDeviation],
+ [BelowPhreaticLevelShift],
+ [DiameterD70Mean],
+ [DiameterD70CoefficientOfVariation],
+ [PermeabilityMean],
+ [PermeabilityCoefficientOfVariation],
+ [Order])
+SELECT
+ [PipingSoilLayerEntityId],
+ [PipingSoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ CASE
+ WHEN [BelowPhreaticLevelMean] <= 0
+ THEN NULL
+ ELSE
+ [BelowPhreaticLevelMean]
+ END,
+ CASE
+ WHEN [BelowPhreaticLevelDeviation] < 0
+ THEN NULL
+ ELSE
+ [BelowPhreaticLevelDeviation]
+ END,
+ CASE
+ WHEN [BelowPhreaticLevelMean] < [BelowPhreaticLevelShift]
+ THEN NULL
+ ELSE
+ [BelowPhreaticLevelShift]
+ END,
+ CASE
+ WHEN [DiameterD70Mean] <= 0
+ THEN NULL
+ ELSE
+ [DiameterD70Mean]
+ END,
+ CASE
+ WHEN [DiameterD70CoefficientOfVariation] < 0
+ THEN NULL
+ ELSE
+ [DiameterD70CoefficientOfVariation]
+ END,
+ CASE
+ WHEN [PermeabilityMean] <= 0
+ THEN NULL
+ ELSE
+ [PermeabilityMean]
+ END,
+ CASE
+ WHEN [PermeabilityCoefficientOfVariation] < 0
+ THEN NULL
+ ELSE
+ [PermeabilityCoefficientOfVariation]
+ END,
+ [Order]
+FROM [SOURCEPROJECT].PipingSoilLayerEntity;
+INSERT INTO PipingSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingSoilProfileEntity;
+INSERT INTO PipingStochasticSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingStochasticSoilProfileEntity;
+INSERT INTO PipingStructureSectionResultEntity (
+ [PipingStructureSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [PipingStructureSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].PipingStructureSectionResultEntity;
+INSERT INTO ProjectEntity SELECT * FROM [SOURCEPROJECT].ProjectEntity;
+INSERT INTO StabilityPointStructureEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructureEntity;
+INSERT INTO StabilityPointStructuresCalculationEntity (
+ [StabilityPointStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [StabilityPointStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ConstructiveStrengthLinearLoadModelMean],
+ [ConstructiveStrengthLinearLoadModelCoefficientOfVariation],
+ [ConstructiveStrengthQuadraticLoadModelMean],
+ [ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation],
+ [BankWidthMean],
+ [BankWidthStandardDeviation],
+ [InsideWaterLevelFailureConstructionMean],
+ [InsideWaterLevelFailureConstructionStandardDeviation],
+ [EvaluationLevel],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ [VerticalDistance],
+ [FailureProbabilityRepairClosure],
+ [FailureCollisionEnergyMean],
+ [FailureCollisionEnergyCoefficientOfVariation],
+ [ShipMassMean],
+ [ShipMassCoefficientOfVariation],
+ [ShipVelocityMean],
+ [ShipVelocityCoefficientOfVariation],
+ [LevellingCount],
+ [ProbabilityCollisionSecondaryStructure],
+ [FlowVelocityStructureClosableMean],
+ [StabilityLinearLoadModelMean],
+ [StabilityLinearLoadModelCoefficientOfVariation],
+ [StabilityQuadraticLoadModelMean],
+ [StabilityQuadraticLoadModelCoefficientOfVariation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [InflowModelType],
+ [LoadSchematizationType],
+ [VolumicWeightWater],
+ [StormDurationMean],
+ [FactorStormDurationOpenStructure],
+ [DrainCoefficientMean],
+ [FailureProbabilityStructureWithErosion],
+ [ShouldIllustrationPointsBeCalculated])
+SELECT
+ [StabilityPointStructuresCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [StabilityPointStructureEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [StructureNormalOrientation],
+ [StorageStructureAreaMean],
+ [StorageStructureAreaCoefficientOfVariation],
+ [AllowedLevelIncreaseStorageMean],
+ [AllowedLevelIncreaseStorageStandardDeviation],
+ [WidthFlowAperturesMean],
+ [WidthFlowAperturesStandardDeviation],
+ [InsideWaterLevelMean],
+ [InsideWaterLevelStandardDeviation],
+ [ThresholdHeightOpenWeirMean],
+ [ThresholdHeightOpenWeirStandardDeviation],
+ [CriticalOvertoppingDischargeMean],
+ [CriticalOvertoppingDischargeCoefficientOfVariation],
+ [FlowWidthAtBottomProtectionMean],
+ [FlowWidthAtBottomProtectionStandardDeviation],
+ [ConstructiveStrengthLinearLoadModelMean],
+ [ConstructiveStrengthLinearLoadModelCoefficientOfVariation],
+ [ConstructiveStrengthQuadraticLoadModelMean],
+ [ConstructiveStrengthQuadraticLoadModelCoefficientOfVariation],
+ [BankWidthMean],
+ [BankWidthStandardDeviation],
+ [InsideWaterLevelFailureConstructionMean],
+ [InsideWaterLevelFailureConstructionStandardDeviation],
+ [EvaluationLevel],
+ [LevelCrestStructureMean],
+ [LevelCrestStructureStandardDeviation],
+ CASE
+ WHEN [VerticalDistance] < 0
+ THEN NULL
+ ELSE
+ [VerticalDistance]
+ END,
+ [FailureProbabilityRepairClosure],
+ [FailureCollisionEnergyMean],
+ [FailureCollisionEnergyCoefficientOfVariation],
+ [ShipMassMean],
+ [ShipMassCoefficientOfVariation],
+ [ShipVelocityMean],
+ [ShipVelocityCoefficientOfVariation],
+ CASE
+ WHEN [LevellingCount] < 0
+ THEN 0
+ ELSE
+ [LevellingCount]
+ END,
+ [ProbabilityCollisionSecondaryStructure],
+ [FlowVelocityStructureClosableMean],
+ [StabilityLinearLoadModelMean],
+ [StabilityLinearLoadModelCoefficientOfVariation],
+ [StabilityQuadraticLoadModelMean],
+ [StabilityQuadraticLoadModelCoefficientOfVariation],
+ [AreaFlowAperturesMean],
+ [AreaFlowAperturesStandardDeviation],
+ [InflowModelType],
+ [LoadSchematizationType],
+ [VolumicWeightWater],
+ [StormDurationMean],
+ [FactorStormDurationOpenStructure],
+ [DrainCoefficientMean],
+ [FailureProbabilityStructureWithErosion],
+ [ShouldIllustrationPointsBeCalculated]
+FROM [SOURCEPROJECT].StabilityPointStructuresCalculationEntity;
+INSERT INTO StabilityPointStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresFailureMechanismMetaEntity;
+INSERT INTO StabilityPointStructuresSectionResultEntity (
+ [StabilityPointStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [StabilityPointStructuresCalculationEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [TailorMadeAssessmentProbability],
+ [UseManualAssembly],
+ [ManualAssemblyProbability])
+SELECT
+ [StabilityPointStructuresSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [StabilityPointStructuresCalculationEntityId],
+ [LayerOne],
+ 1,
+ CASE
+ WHEN [LayerThree] IS NOT NULL
+ THEN 3
+ ELSE
+ 1
+ END,
+ [LayerThree],
+ 0,
+ NULL
+FROM [SOURCEPROJECT].StabilityPointStructuresSectionResultEntity;
+INSERT INTO StabilityStoneCoverFailureMechanismMetaEntity (
+ [StabilityStoneCoverFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [ForeshoreProfileCollectionSourcePath],
+ [N])
+SELECT [StabilityStoneCoverFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [ForeshoreProfileCollectionSourcePath],
+ "4"
+FROM [SOURCEPROJECT].StabilityStoneCoverFailureMechanismMetaEntity;
+INSERT INTO StabilityStoneCoverSectionResultEntity (
+ [StabilityStoneCoverSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResultForFactorizedSignalingNorm],
+ [DetailedAssessmentResultForSignalingNorm],
+ [DetailedAssessmentResultForMechanismSpecificLowerLimitNorm],
+ [DetailedAssessmentResultForLowerLimitNorm],
+ [DetailedAssessmentResultForFactorizedLowerLimitNorm],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [StabilityStoneCoverSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [LayerOne],
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsCalculationEntity(
+ [StabilityStoneCoverWaveConditionsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [UpperBoundaryRevetment],
+ [LowerBoundaryRevetment],
+ [UpperBoundaryWaterLevels],
+ [LowerBoundaryWaterLevels],
+ [StepSize],
+ [CategoryType]
+)
+SELECT
+ [StabilityStoneCoverWaveConditionsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ calc.'Order',
+ calc.Name,
+ calc.Comments,
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [UpperBoundaryRevetment],
+ [LowerBoundaryRevetment],
+ [UpperBoundaryWaterLevels],
+ [LowerBoundaryWaterLevels],
+ [StepSize],
+ CASE
+ WHEN [NormativeNormType] = 1
+ THEN 3
+ ELSE
+ 2
+ END
+FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsCalculationEntity calc
+JOIN [SOURCEPROJECT].CalculationGroupEntity USING(CalculationGroupEntityId)
+JOIN [SOURCEPROJECT].FailureMechanismEntity USING(CalculationGroupEntityId)
+JOIN [SOURCEPROJECT].AssessmentSectionEntity USING(AssessmentSectionEntityId);
+INSERT INTO StochasticSoilModelEntity (
+ [StochasticSoilModelEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [StochasticSoilModelSegmentPointXml],
+ [Order])
+SELECT
+ [StochasticSoilModelEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ REPLACE(
+ REPLACE(StochasticSoilModelSegmentPointXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point2DXmlSerializer.SerializablePoint2D',
+ 'SerializablePoint2D'
+ ),
+ [Order]
+FROM [SOURCEPROJECT].StochasticSoilModelEntity;
+INSERT INTO StrengthStabilityLengthwiseConstructionSectionResultEntity (
+ [StrengthStabilityLengthwiseConstructionSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [StrengthStabilityLengthwiseConstructionSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity;
+INSERT INTO SurfaceLineEntity(
+ [SurfaceLineEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [ReferenceLineIntersectionX],
+ [ReferenceLineIntersectionY],
+ [PointsXml],
+ [Order])
+SELECT
+ [SurfaceLineEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [ReferenceLineIntersectionX],
+ [ReferenceLineIntersectionY],
+ REPLACE(
+ REPLACE(PointsXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point3DXmlSerializer.SerializablePoint3D',
+ 'SerializablePoint3D'
+ ),
+ [Order]
+FROM [SOURCEPROJECT].SurfaceLineEntity;
+INSERT INTO TechnicalInnovationSectionResultEntity (
+ [TechnicalInnovationSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [TechnicalInnovationSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].TechnicalInnovationSectionResultEntity;
+INSERT INTO VersionEntity (
+ [VersionId],
+ [Version],
+ [Timestamp],
+ [FingerPrint])
+SELECT [VersionId],
+ "18.1",
+ [Timestamp],
+ [FingerPrint]
+FROM [SOURCEPROJECT].VersionEntity;
+INSERT INTO WaterPressureAsphaltCoverSectionResultEntity (
+ [WaterPressureAsphaltCoverSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [WaterPressureAsphaltCoverSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverFailureMechanismMetaEntity (
+ [WaveImpactAsphaltCoverFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [ForeshoreProfileCollectionSourcePath],
+ [DeltaL])
+SELECT [WaveImpactAsphaltCoverFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [ForeshoreProfileCollectionSourcePath],
+ "1000"
+FROM [SOURCEPROJECT].WaveImpactAsphaltCoverFailureMechanismMetaEntity;
+INSERT INTO WaveImpactAsphaltCoverSectionResultEntity (
+ [WaveImpactAsphaltCoverSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ [SimpleAssessmentResult],
+ [DetailedAssessmentResultForFactorizedSignalingNorm],
+ [DetailedAssessmentResultForSignalingNorm],
+ [DetailedAssessmentResultForMechanismSpecificLowerLimitNorm],
+ [DetailedAssessmentResultForLowerLimitNorm],
+ [DetailedAssessmentResultForFactorizedLowerLimitNorm],
+ [TailorMadeAssessmentResult],
+ [UseManualAssembly],
+ [ManualAssemblyCategoryGroup])
+SELECT
+ [WaveImpactAsphaltCoverSectionResultEntityId],
+ [FailureMechanismSectionEntityId],
+ CASE
+ WHEN [LayerOne] = 3
+ THEN 4
+ ELSE
+ [LayerOne]
+ END,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 0,
+ 1
+FROM [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsCalculationEntity (
+ [WaveImpactAsphaltCoverWaveConditionsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [UpperBoundaryRevetment],
+ [LowerBoundaryRevetment],
+ [UpperBoundaryWaterLevels],
+ [LowerBoundaryWaterLevels],
+ [StepSize],
+ [CategoryType]
+)
+SELECT
+ [WaveImpactAsphaltCoverWaveConditionsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ calc.'Order',
+ calc.Name,
+ calc.Comments,
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [UpperBoundaryRevetment],
+ [LowerBoundaryRevetment],
+ [UpperBoundaryWaterLevels],
+ [LowerBoundaryWaterLevels],
+ [StepSize],
+ CASE
+ WHEN [NormativeNormType] = 1
+ THEN 3
+ ELSE
+ 2
+ END
+FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsCalculationEntity calc
+JOIN [SOURCEPROJECT].CalculationGroupEntity USING(CalculationGroupEntityId)
+JOIN [SOURCEPROJECT].FailureMechanismEntity USING(CalculationGroupEntityId)
+JOIN [SOURCEPROJECT].AssessmentSectionEntity USING(AssessmentSectionEntityId);
+
+/*
+Outputs that used HydraRing are not migrated
+*/
+-- ClosingStructuresOutputEntity
+-- GrassCoverErosionOutwardsWaveConditionsOutputEntity
+-- GrassCoverErosionInwardsDikeHeightOutputEntity
+-- GrassCoverErosionInwardsOutputEntity
+-- GrassCoverErosionInwardsOvertoppingRateOutputEntity
+-- HeightStructuresOutputEntity
+-- StabilityPointStructuresOutputEntity
+-- StabilityStoneCoverWaveConditionsOutputEntity
+-- WaveImpactAsphaltCoverWaveConditionsOutputEntity
+-- TopLevelFaultTreeIllustrationPointEntity
+-- TopLevelSubMechanismIllustrationPointEntity
+-- GeneralResultFaultTreeIllustrationPointEntity
+-- GeneralResultFaultTreeIllustrationPointStochastEntity
+-- GeneralResultSubMechanismIllustrationPointEntity
+-- GeneralResultSubMechanismIllustrationPointStochastEntity
+-- SubMechanismIllustrationPointEntity
+-- SubMechanismIllustrationPointStochastEntity
+-- FaultTreeIllustrationPointEntity
+-- FaultTreeIllustrationPointStochastEntity
+-- FaultTreeSubmechanismIllustrationPointEntity
+-- StochastEntity
+-- (Conditional) MacroStabilityInwardsCalculationOutputEntity
+-- (Conditional) PipingCalculationOutputEntity
+
+/*
+Insert new data
+*/
+INSERT INTO MacroStabilityOutwardsFailureMechanismMetaEntity (
+ [FailureMechanismEntityId],
+ [A])
+SELECT FailureMechanismEntityId,
+ 0.033
+FROM FailureMechanismEntity WHERE FailureMechanismType = 13;
+
+INSERT INTO PipingStructureFailureMechanismMetaEntity (
+ [FailureMechanismEntityId],
+ [N])
+SELECT FailureMechanismEntityId,
+ 1.0
+FROM FailureMechanismEntity WHERE FailureMechanismType = 11;
+
+-- Migrate the Hydraulic Boundary Locations and associated data
+/*
+Note, the following conventions are used for the calculation type on AssessmentSectionEntity:
+- The water level calculations for the factorized signaling norm = 0.
+- The water level calculations for the signaling norm = 1.
+- The water level calculations for the lower limit norm = 2.
+- The water level calculations for the factorized lower limit norm = 3.
+- The wave height calculations for the factorized signaling norm = 4.
+- The wave height calculations for the signaling norm = 5.
+- The wave height calculations for the lower limit norm = 6.
+- The wave height calculations for the factorized lower limit norm = 7.
+For grass cover erosion outwards:
+- The design water level failure mechanism specific factorized signaling norm = 8.
+- The design water level failure mechanism specific signaling norm = 9.
+- The design water level failure mechanism specific lower limit norm = 10.
+- The wave height failure mechanism specific factorized signaling norm = 11.
+- The wave height failure mechanism specific signaling norm = 12.
+- The wave height failure mechanism specific lower limit norm = 13.
+*/
+CREATE TEMP TABLE TempCalculationTypes ( 'CalculationType' TINYINT (1) NOT NULL);
+INSERT INTO TempCalculationTypes VALUES (0);
+INSERT INTO TempCalculationTypes VALUES (1);
+INSERT INTO TempCalculationTypes VALUES (2);
+INSERT INTO TempCalculationTypes VALUES (3);
+INSERT INTO TempCalculationTypes VALUES (4);
+INSERT INTO TempCalculationTypes VALUES (5);
+INSERT INTO TempCalculationTypes VALUES (6);
+INSERT INTO TempCalculationTypes VALUES (7);
+INSERT INTO TempCalculationTypes VALUES (8);
+INSERT INTO TempCalculationTypes VALUES (9);
+INSERT INTO TempCalculationTypes VALUES (10);
+INSERT INTO TempCalculationTypes VALUES (11);
+INSERT INTO TempCalculationTypes VALUES (12);
+INSERT INTO TempCalculationTypes VALUES (13);
+
+-- Migrate the hydraulic boundary location calculations on assessment section level
+-- Create the calculation collections
+CREATE TEMP TABLE TempHydraulicLocationCalculationCollectionEntity
+(
+ 'HydraulicLocationCalculationCollectionEntityId' INTEGER NOT NULL,
+ 'AssessmentSectionEntityId' INTEGER,
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER,
+ 'CalculationType' TINYINT (1) NOT NULL,
+ PRIMARY KEY
+ (
+ 'HydraulicLocationCalculationCollectionEntityId' AUTOINCREMENT
+ )
+);
+
+INSERT INTO TempHydraulicLocationCalculationCollectionEntity (
+ [AssessmentSectionEntityId],
+ [CalculationType])
+SELECT
+ [AssessmentSectionEntityId],
+ [CalculationType]
+FROM [SOURCEPROJECT].AssessmentSectionEntity
+JOIN (
+ SELECT *
+ FROM TempCalculationTypes
+ WHERE CalculationType >= 0 AND CalculationType <= 7
+);
+
+INSERT INTO TempHydraulicLocationCalculationCollectionEntity (
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [CalculationType])
+SELECT
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [CalculationType]
+FROM [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity
+JOIN (
+ SELECT *
+ FROM TempCalculationTypes
+ WHERE CalculationType >= 8 AND CalculationType <= 13
+);
+
+INSERT INTO HydraulicLocationCalculationCollectionEntity (
+ [HydraulicLocationCalculationCollectionEntityId])
+SELECT
+ [HydraulicLocationCalculationCollectionEntityId]
+FROM TempHydraulicLocationCalculationCollectionEntity;
+
+-- Create the calculation entities
+CREATE TEMP TABLE TempHydraulicLocationCalculationEntity
+(
+ 'HydraulicLocationCalculationEntityId' INTEGER NOT NULL,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL,
+ 'AssessmentSectionEntityId' INTEGER,
+ 'GrassCoverErosionOutwardsFailureMechanismMetaEntityId' INTEGER,
+ 'CalculationType' TINYINT (1) NOT NULL,
+ PRIMARY KEY
+ (
+ 'HydraulicLocationCalculationEntityId' AUTOINCREMENT
+ )
+);
+
+-- Create the calculations for the Hydraulic Boundary Locations on AssessmentSection level
+INSERT INTO TempHydraulicLocationCalculationEntity (
+ [HydraulicLocationEntityId],
+ [AssessmentSectionEntityId],
+ [CalculationType])
+SELECT
+ [HydraulicLocationEntityId],
+ [AssessmentSectionEntityId],
+ [CalculationType]
+FROM HydraulicLocationEntity
+JOIN (
+ SELECT *
+ FROM TempCalculationTypes
+ WHERE CalculationType >= 0 AND CalculationType <= 7
+);
+
+-- Create a lookup table to match the Hydraulic Boundary Locations on Grass Cover Erosion Outwards Failure Mechanism
+-- with the Hydraulic Boundary Locations in the Assessment Section level, because the primary keys of the
+-- Hydraulic Boundary Locations between these two levels might differ.
+-- The translation between the Hydraulic Boundary Locations is based on the LocationID (which is assumed to be unique
+-- for every Hydraulic Boundary Location) and the AssessmentSection (which is necessary because multiple assessment
+-- sections can contain the same Hydraulic Boundary Locations)
+CREATE TEMP TABLE TempGrassCoverErosionOutwardsHydraulicBoundaryLocationLookupTable (
+ 'GrassCoverErosionOutwardsHydraulicLocationEntityId' INTEGER NOT NULL UNIQUE,
+ 'HydraulicLocationEntityId' INTEGER NOT NULL UNIQUE
+);
+
+INSERT INTO TempGrassCoverErosionOutwardsHydraulicBoundaryLocationLookupTable (
+ [GrassCoverErosionOutwardsHydraulicLocationEntityId],
+ [HydraulicLocationEntityId]
+)
+SELECT
+ GrassCoverErosionOutwardsHydraulicLocationEntityId,
+ HydraulicLocationEntityId
+FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationEntity gceohl
+JOIN [SOURCEPROJECT].FailureMechanismEntity fm USING(FailureMechanismEntityId)
+JOIN [SOURCEPROJECT].HydraulicLocationEntity hl ON (hl.LocationId = gceohl.LocationId AND hl.AssessmentSectionEntityId = fm.AssessmentSectionEntityId);
+
+-- Create the calculations for the Hydraulic Boundary Locations on Grass Cover Erosion Outwards Failure Mechanism level
+INSERT INTO TempHydraulicLocationCalculationEntity (
+ [HydraulicLocationEntityId],
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [CalculationType])
+SELECT
+ [HydraulicLocationEntityId],
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [CalculationType]
+FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationEntity
+JOIN [SOURCEPROJECT].FailureMechanismEntity USING(FailureMechanismEntityId)
+JOIN [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity USING(FailureMechanismEntityId)
+JOIN TempGrassCoverErosionOutwardsHydraulicBoundaryLocationLookupTable USING(GrassCoverErosionOutwardsHydraulicLocationEntityId)
+JOIN (
+ SELECT *
+ FROM TempCalculationTypes
+ WHERE CalculationType >= 8 AND CalculationType <= 13
+);
+
+-- Insert the calculations
+INSERT INTO HydraulicLocationCalculationEntity (
+ [HydraulicLocationCalculationEntityId],
+ [HydraulicLocationEntityId],
+ [HydraulicLocationCalculationCollectionEntityId],
+ [ShouldIllustrationPointsBeCalculated])
+SELECT
+ [HydraulicLocationCalculationEntityId],
+ [HydraulicLocationEntityId],
+ [HydraulicLocationCalculationCollectionEntityId],
+ 0
+FROM TempHydraulicLocationCalculationCollectionEntity collections
+JOIN TempHydraulicLocationCalculationEntity calculations
+ON calculations.CalculationType = collections.CalculationType
+AND (calculations.AssessmentSectionEntityId = collections.AssessmentSectionEntityId
+ OR calculations.GrassCoverErosionOutwardsFailureMechanismMetaEntityId = collections.GrassCoverErosionOutwardsFailureMechanismMetaEntityId);
+
+-- Migration for the Hydraulic Boundary Locations on Assessment Section Level
+INSERT INTO AssessmentSectionEntity (
+ [AssessmentSectionEntityId],
+ [ProjectEntityId],
+ [HydraulicLocationCalculationCollectionEntity1Id],
+ [HydraulicLocationCalculationCollectionEntity2Id],
+ [HydraulicLocationCalculationCollectionEntity3Id],
+ [HydraulicLocationCalculationCollectionEntity4Id],
+ [HydraulicLocationCalculationCollectionEntity5Id],
+ [HydraulicLocationCalculationCollectionEntity6Id],
+ [HydraulicLocationCalculationCollectionEntity7Id],
+ [HydraulicLocationCalculationCollectionEntity8Id],
+ [Id],
+ [Name],
+ [Comments],
+ [LowerLimitNorm],
+ [SignalingNorm],
+ [NormativeNormType],
+ [HydraulicDatabaseVersion],
+ [HydraulicDatabaseLocation],
+ [Composition],
+ [ReferenceLinePointXml],
+ [Order])
+SELECT
+ [AssessmentSectionEntityId],
+ [ProjectEntityId],
+ [WaterLevelCalculationsForFactorizedSignalingNormId],
+ [WaterLevelCalculationsForSignalingNormId],
+ [WaterLevelCalculationsForLowerLimitNormId],
+ [WaterLevelCalculationsForFactorizedLowerLimitNormId],
+ [WaveHeightCalculationsForFactorizedSignalingNormId],
+ [WaveHeightCalculationsForSignalingNormId],
+ [WaveHeightCalculationsForLowerLimitNormId],
+ [WaveHeightCalculationsForFactorizedLowerLimitNormId],
+ [Id],
+ [Name],
+ [Comments],
+ [LowerLimitNorm],
+ [SignalingNorm],
+ [NormativeNormType],
+ [HydraulicDatabaseVersion],
+ [HydraulicDatabaseLocation],
+ [Composition],
+ REPLACE(
+ REPLACE(ReferenceLinePointXml, ' xmlns="http://schemas.datacontract.org/2004/07/Application.Ringtoets.Storage.Serializers"', ''),
+ 'Point2DXmlSerializer.SerializablePoint2D',
+ 'SerializablePoint2D'
+ ),
+ [Order]
+FROM [SOURCEPROJECT].AssessmentSectionEntity
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForFactorizedSignalingNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 0
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForSignalingNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 1
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForLowerLimitNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 2
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForFactorizedLowerLimitNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 3
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForFactorizedSignalingNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 4
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForSignalingNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 5
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForLowerLimitNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 6
+) USING(AssessmentSectionEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForFactorizedLowerLimitNormId,
+ AssessmentSectionEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 7
+) USING(AssessmentSectionEntityId);
+
+-- Update the calculation inputs
+UPDATE HydraulicLocationCalculationEntity
+ SET [ShouldIllustrationPointsBeCalculated] = 1
+ WHERE HydraulicLocationCalculationEntityId IN (
+ SELECT
+ HydraulicLocationCalculationEntityId
+ FROM AssessmentSectionEntity ase
+ JOIN HydraulicLocationCalculationCollectionEntity hlcce
+ ON ase.HydraulicLocationCalculationCollectionEntity2Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ OR ase.HydraulicLocationCalculationCollectionEntity3Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ OR ase.HydraulicLocationCalculationCollectionEntity6Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ OR ase.HydraulicLocationCalculationCollectionEntity7Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ JOIN HydraulicLocationCalculationEntity USING(HydraulicLocationCalculationCollectionEntityId)
+ JOIN [SOURCEPROJECT].HydraulicLocationEntity USING(HydraulicLocationEntityId)
+ WHERE(ShouldDesignWaterLevelIllustrationPointsBeCalculated = 1 AND NormativeNormType = 2 AND ase.HydraulicLocationCalculationCollectionEntity2Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+ OR (ShouldDesignWaterLevelIllustrationPointsBeCalculated = 1 AND NormativeNormType = 1 AND ase.HydraulicLocationCalculationCollectionEntity3Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+ OR (ShouldWaveHeightIllustrationPointsBeCalculated = 1 AND NormativeNormType = 2 AND ase.HydraulicLocationCalculationCollectionEntity6Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+ OR (ShouldWaveHeightIllustrationPointsBeCalculated = 1 AND NormativeNormType = 1 AND ase.HydraulicLocationCalculationCollectionEntity7Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+);
+
+-- Migration for the Hydraulic Boundary Locations on Grass Cover Erosion Outwards Failure Mechanism Level
+INSERT INTO GrassCoverErosionOutwardsFailureMechanismMetaEntity (
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [HydraulicLocationCalculationCollectionEntity1Id],
+ [HydraulicLocationCalculationCollectionEntity2Id],
+ [HydraulicLocationCalculationCollectionEntity3Id],
+ [HydraulicLocationCalculationCollectionEntity4Id],
+ [HydraulicLocationCalculationCollectionEntity5Id],
+ [HydraulicLocationCalculationCollectionEntity6Id],
+ [N],
+ [ForeshoreProfileCollectionSourcePath])
+SELECT
+ [GrassCoverErosionOutwardsFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [WaterLevelCalculationsForFailureMechanismSpecificFactorizedSignalingNormId],
+ [WaterLevelCalculationsForFailureMechanismSpecificSignalingNormId],
+ [WaterLevelCalculationsForFailureMechanismSpecificLowerLimitNormId],
+ [WaveHeightCalculationsForFailureMechanismSpecificFactorizedSignalingNormId],
+ [WaveHeightCalculationsForFailureMechanismSpecificSignalingNormId],
+ [WaveHeightCalculationsForFailureMechanismSpecificLowerLimitNormId],
+ [N],
+ [ForeshoreProfileCollectionSourcePath]
+FROM [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForFailureMechanismSpecificFactorizedSignalingNormId,
+ GrassCoverErosionOutwardsFailureMechanismMetaEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 8
+) USING(GrassCoverErosionOutwardsFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForFailureMechanismSpecificSignalingNormId,
+ GrassCoverErosionOutwardsFailureMechanismMetaEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 9
+) USING(GrassCoverErosionOutwardsFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaterLevelCalculationsForFailureMechanismSpecificLowerLimitNormId,
+ GrassCoverErosionOutwardsFailureMechanismMetaEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 10
+) USING(GrassCoverErosionOutwardsFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForFailureMechanismSpecificFactorizedSignalingNormId,
+ GrassCoverErosionOutwardsFailureMechanismMetaEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 11
+) USING(GrassCoverErosionOutwardsFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForFailureMechanismSpecificSignalingNormId,
+ GrassCoverErosionOutwardsFailureMechanismMetaEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 12
+) USING(GrassCoverErosionOutwardsFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ HydraulicLocationCalculationCollectionEntityId AS WaveHeightCalculationsForFailureMechanismSpecificLowerLimitNormId,
+ GrassCoverErosionOutwardsFailureMechanismMetaEntityId
+ FROM TempHydraulicLocationCalculationCollectionEntity WHERE CalculationType = 13
+) USING(GrassCoverErosionOutwardsFailureMechanismMetaEntityId);
+
+-- Update the calculation inputs
+UPDATE HydraulicLocationCalculationEntity
+ SET [ShouldIllustrationPointsBeCalculated] = 1
+ WHERE HydraulicLocationCalculationEntityId IN (
+ SELECT
+ HydraulicLocationCalculationEntityId
+ FROM GrassCoverErosionOutwardsFailureMechanismMetaEntity gceofmme
+ JOIN FailureMechanismEntity fm USING(FailureMechanismEntityId)
+ JOIN AssessmentSectionEntity USING(AssessmentSectionEntityId)
+ JOIN HydraulicLocationCalculationCollectionEntity hlcce
+ ON gceofmme.HydraulicLocationCalculationCollectionEntity2Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ OR gceofmme.HydraulicLocationCalculationCollectionEntity3Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ OR gceofmme.HydraulicLocationCalculationCollectionEntity5Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ OR gceofmme.HydraulicLocationCalculationCollectionEntity6Id = hlcce.HydraulicLocationCalculationCollectionEntityId
+ JOIN HydraulicLocationCalculationEntity USING(HydraulicLocationCalculationCollectionEntityId)
+ JOIN HydraulicLocationEntity hl USING(HydraulicLocationEntityId)
+ JOIN TempGrassCoverErosionOutwardsHydraulicBoundaryLocationLookupTable USING(HydraulicLocationEntityId)
+ JOIN [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationEntity USING(GrassCoverErosionOutwardsHydraulicLocationEntityId)
+ WHERE (ShouldDesignWaterLevelIllustrationPointsBeCalculated = 1 AND NormativeNormType = 2 AND gceofmme.HydraulicLocationCalculationCollectionEntity2Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+ OR (ShouldDesignWaterLevelIllustrationPointsBeCalculated = 1 AND NormativeNormType = 1 AND gceofmme.HydraulicLocationCalculationCollectionEntity3Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+ OR (ShouldWaveHeightIllustrationPointsBeCalculated = 1 AND NormativeNormType = 2 AND gceofmme.HydraulicLocationCalculationCollectionEntity5Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+ OR (ShouldWaveHeightIllustrationPointsBeCalculated = 1 AND NormativeNormType = 1 AND gceofmme.HydraulicLocationCalculationCollectionEntity6Id = hlcce.HydraulicLocationCalculationCollectionEntityId)
+);
+
+-- Migrate the grass cover erosion outwards wave conditions calculations
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsCalculationEntity (
+ [GrassCoverErosionOutwardsWaveConditionsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ [HydraulicLocationEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [UpperBoundaryRevetment],
+ [LowerBoundaryRevetment],
+ [UpperBoundaryWaterLevels],
+ [LowerBoundaryWaterLevels],
+ [StepSize],
+ [CategoryType])
+SELECT
+ [GrassCoverErosionOutwardsWaveConditionsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [ForeshoreProfileEntityId],
+ lookup.HydraulicLocationEntityId,
+ calc.'Order',
+ calc.Name,
+ calc.Comments,
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [UseForeshore],
+ [Orientation],
+ [UpperBoundaryRevetment],
+ [LowerBoundaryRevetment],
+ [UpperBoundaryWaterLevels],
+ [LowerBoundaryWaterLevels],
+ [StepSize],
+ CASE
+ WHEN [NormativeNormType] = 1
+ THEN 3
+ ELSE
+ 2
+ END
+FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsCalculationEntity calc
+LEFT JOIN TempGrassCoverErosionOutwardsHydraulicBoundaryLocationLookupTable lookup USING(GrassCoverErosionOutwardsHydraulicLocationEntityId)
+JOIN CalculationGroupEntity USING(CalculationGroupEntityId)
+JOIN FailureMechanismEntity USING(CalculationGroupEntityId)
+JOIN AssessmentSectionEntity USING(AssessmentSectionEntityId);
+
+-- Migrate dune locations and associated data.
+/*
+Note, the following conventions are used for the calculation type on AssessmentSectionEntity:
+- The dune calculations for the mechanism specific factorized signaling norm = 0.
+- The dune calculations for the mechanism specific signaling norm = 1.
+- The dune calculations for the mechanism specific lower limit norm = 2.
+- The dune calculations for the lower limit norm = 3.
+- The dune calculations for the factorized lower limit norm = 4.
+*/
+CREATE TEMP TABLE TempDuneCalculationTypes ( 'CalculationType' TINYINT (1) NOT NULL);
+INSERT INTO TempDuneCalculationTypes VALUES (0);
+INSERT INTO TempDuneCalculationTypes VALUES (1);
+INSERT INTO TempDuneCalculationTypes VALUES (2);
+INSERT INTO TempDuneCalculationTypes VALUES (3);
+INSERT INTO TempDuneCalculationTypes VALUES (4);
+
+-- Create the calculation collections
+CREATE TEMP TABLE TempDuneLocationCalculationCollectionEntity
+(
+ 'DuneLocationCalculationCollectionEntityId' INTEGER NOT NULL,
+ 'DuneErosionFailureMechanismMetaEntityId' INTEGER NOT NULL,
+ 'CalculationType' TINYINT (1) NOT NULL,
+ PRIMARY KEY
+ (
+ 'DuneLocationCalculationCollectionEntityId' AUTOINCREMENT
+ )
+);
+
+INSERT INTO TempDuneLocationCalculationCollectionEntity (
+ [DuneErosionFailureMechanismMetaEntityId],
+ [CalculationType])
+SELECT
+ [DuneErosionFailureMechanismMetaEntityId],
+ [CalculationType]
+FROM [SOURCEPROJECT].DuneErosionFailureMechanismMetaEntity
+JOIN (
+ SELECT *
+ FROM TempDuneCalculationTypes
+);
+
+INSERT INTO DuneLocationCalculationCollectionEntity(
+ [DuneLocationCalculationCollectionEntityId])
+SELECT
+ [DuneLocationCalculationCollectionEntityId]
+FROM TempDuneLocationCalculationCollectionEntity;
+
+-- Create the calculation entities
+CREATE TEMP TABLE TempDuneLocationCalculationEntity
+(
+ 'DuneLocationCalculationEntityId' INTEGER NOT NULL,
+ 'DuneLocationEntityId' INTEGER NOT NULL,
+ 'DuneErosionFailureMechanismMetaEntityId' INTEGER,
+ 'CalculationType' TINYINT (1) NOT NULL,
+ PRIMARY KEY
+ (
+ 'DuneLocationCalculationEntityId' AUTOINCREMENT
+ )
+);
+
+INSERT INTO TempDuneLocationCalculationEntity(
+ [DuneLocationEntityId],
+ [DuneErosionFailureMechanismMetaEntityId],
+ [CalculationType])
+SELECT
+ [DuneLocationEntityId],
+ [DuneErosionFailureMechanismMetaEntityId],
+ [CalculationType]
+FROM [SourceProject].FailureMechanismEntity
+JOIN [SourceProject].DuneLocationEntity USING(FailureMechanismEntityId)
+JOIN [SourceProject].DuneErosionFailureMechanismMetaEntity USING(FailureMechanismEntityId)
+JOIN (
+ SELECT *
+ FROM TempDuneCalculationTypes
+);
+
+INSERT INTO DuneLocationCalculationEntity(
+ [DuneLocationCalculationEntityId],
+ [DuneLocationEntityId],
+ [DuneLocationCalculationCollectionEntityId])
+SELECT
+ [DuneLocationCalculationEntityId],
+ [DuneLocationEntityId],
+ [DuneLocationCalculationCollectionEntityId]
+FROM TempDuneLocationCalculationCollectionEntity collections
+JOIN TempDuneLocationCalculationEntity calculations
+ON collections.CalculationType = calculations.CalculationType
+AND collections.DuneErosionFailureMechanismMetaEntityId = calculations.DuneErosionFailureMechanismMetaEntityId;
+
+-- Migrate the dune erosion failure mechanism meta entity
+INSERT INTO DuneErosionFailureMechanismMetaEntity (
+ DuneErosionFailureMechanismMetaEntityId,
+ FailureMechanismEntityId,
+ DuneLocationCalculationCollectionEntity1Id,
+ DuneLocationCalculationCollectionEntity2Id,
+ DuneLocationCalculationCollectionEntity3Id,
+ DuneLocationCalculationCollectionEntity4Id,
+ DuneLocationCalculationCollectionEntity5Id,
+ N
+)
+SELECT
+ [DuneErosionFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [CalculationsForMechanismSpecificFactorizedSignalingNorm],
+ [CalculationsForMechanismSpecificSignalingNorm],
+ [CalculationsForMechanismSpecificLowerLimitNorm],
+ [CalculationsForLowerLimitNorm],
+ [CalculationsForFactorizedLowerLimitNorm],
+ [N]
+FROM [SOURCEPROJECT].DuneErosionFailureMechanismMetaEntity
+JOIN (
+ SELECT
+ DuneLocationCalculationCollectionEntityId AS CalculationsForMechanismSpecificFactorizedSignalingNorm,
+ DuneErosionFailureMechanismMetaEntityId
+ FROM TempDuneLocationCalculationCollectionEntity WHERE CalculationType = 0
+) USING (DuneErosionFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ DuneLocationCalculationCollectionEntityId AS CalculationsForMechanismSpecificSignalingNorm,
+ DuneErosionFailureMechanismMetaEntityId
+ FROM TempDuneLocationCalculationCollectionEntity WHERE CalculationType = 1
+) USING (DuneErosionFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ DuneLocationCalculationCollectionEntityId AS CalculationsForMechanismSpecificLowerLimitNorm,
+ DuneErosionFailureMechanismMetaEntityId
+ FROM TempDuneLocationCalculationCollectionEntity WHERE CalculationType = 2
+) USING (DuneErosionFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ DuneLocationCalculationCollectionEntityId AS CalculationsForLowerLimitNorm,
+ DuneErosionFailureMechanismMetaEntityId
+ FROM TempDuneLocationCalculationCollectionEntity WHERE CalculationType = 3
+) USING (DuneErosionFailureMechanismMetaEntityId)
+JOIN (
+ SELECT
+ DuneLocationCalculationCollectionEntityId AS CalculationsForFactorizedLowerLimitNorm,
+ DuneErosionFailureMechanismMetaEntityId
+ FROM TempDuneLocationCalculationCollectionEntity WHERE CalculationType = 4
+) USING (DuneErosionFailureMechanismMetaEntityId);
+
+-- Cleanup
+DROP TABLE TempCalculationTypes;
+DROP TABLE TempHydraulicLocationCalculationEntity;
+DROP TABLE TempHydraulicLocationCalculationCollectionEntity;
+DROP TABLE TempGrassCoverErosionOutwardsHydraulicBoundaryLocationLookupTable;
+
+DROP TABLE TempDuneCalculationTypes;
+DROP TABLE TempDuneLocationCalculationCollectionEntity;
+DROP TABLE TempDuneLocationCalculationEntity;
+
+/*
+Write migration logging
+*/
+ATTACH DATABASE "{1}" AS LOGDATABASE;
+
+CREATE TABLE IF NOT EXISTS [LOGDATABASE].'MigrationLogEntity'
+(
+ 'MigrationLogEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FromVersion' VARCHAR(20) NOT NULL,
+ 'ToVersion' VARCHAR(20) NOT NULL,
+ 'LogMessage' TEXT NOT NULL
+);
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+VALUES ("17.3", "18.1", "Gevolgen van de migratie van versie 17.3 naar versie 18.1:");
+
+CREATE TEMP TABLE TempLogOutputDeleted
+(
+ 'NrDeleted' INTEGER NOT NULL
+);
+
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].ClosingStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].DuneLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsDikeHeightOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsOvertoppingRateOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].HeightStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].HydraulicLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].StabilityPointStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted
+SELECT COUNT()
+ FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationOutputEntity
+ WHERE MacroStabilityInwardsCalculationEntityId IN (
+ SELECT MacroStabilityInwardsCalculationEntityId
+ FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 0
+ );
+INSERT INTO TempLogOutputDeleted
+SELECT COUNT()
+ FROM [SOURCEPROJECT].PipingCalculationOutputEntity
+ WHERE PipingCalculationEntityId IN (
+ SELECT PipingCalculationEntityId
+ FROM [SOURCEPROJECT].PipingCalculationEntity
+ WHERE UseAssessmentLevelManualInput IS 0
+ );
+
+CREATE TEMP TABLE TempLogOutputRemaining
+(
+ 'NrRemaining' INTEGER NOT NULL
+);
+INSERT INTO TempLogOutputRemaining
+SELECT COUNT() +
+(
+ SELECT COUNT()
+ FROM [SOURCEPROJECT].PipingCalculationOutputEntity
+ JOIN [SOURCEPROJECT].PipingCalculationEntity USING(PipingCalculationEntityId)
+ WHERE UseAssessmentLevelManualInput = 1
+)
+FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationOutputEntity
+JOIN [SOURCEPROJECT].MacroStabilityInwardsCalculationEntity USING(MacroStabilityInwardsCalculationEntityId)
+WHERE UseAssessmentLevelManualInput = 1;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT
+ "17.3",
+ "18.1",
+ CASE
+ WHEN [NrRemaining] > 0
+ THEN "* Alle berekende resultaten zijn verwijderd, behalve die van het toetsspoor 'Piping' en 'Macrostabiliteit binnenwaarts' waarbij de waterstand handmatig is ingevuld."
+ ELSE "* Alle berekende resultaten zijn verwijderd."
+ END
+ FROM TempLogOutputDeleted
+ LEFT JOIN TempLogOutputRemaining
+ WHERE [NrDeleted] > 0
+ LIMIT 1;
+
+DROP TABLE TempLogOutputDeleted;
+DROP TABLE TempLogOutputRemaining;
+
+CREATE TEMP TABLE TempFailureMechanisms
+(
+ 'FailureMechanismType' INTEGER NOT NULL,
+ 'FailureMechanismName' VARCHAR(255) NOT NULL
+);
+
+INSERT INTO TempFailureMechanisms VALUES (1, 'Piping');
+INSERT INTO TempFailureMechanisms VALUES (2, 'Macrostabiliteit binnenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (3, 'Golfklappen op asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (4, 'Grasbekleding erosie buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (5, 'Grasbekleding afschuiven buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (6, 'Grasbekleding erosie kruin en binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (7, 'Stabiliteit steenzetting');
+INSERT INTO TempFailureMechanisms VALUES (8, 'Duinafslag');
+INSERT INTO TempFailureMechanisms VALUES (9, 'Hoogte kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (10, 'Betrouwbaarheid sluiting kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (11, 'Piping bij kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (12, 'Sterkte en stabiliteit puntconstructies');
+INSERT INTO TempFailureMechanisms VALUES (13, 'Macrostabiliteit buitenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (14, 'Microstabiliteit');
+INSERT INTO TempFailureMechanisms VALUES (15, 'Wateroverdruk bij asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (16, 'Grasbekleding afschuiven binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (17, 'Sterkte en stabiliteit langsconstructies');
+INSERT INTO TempFailureMechanisms VALUES (18, 'Technische innovaties');
+
+CREATE TEMP TABLE TempAssessmentSectionFailureMechanism
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName]
+);
+
+INSERT INTO TempAssessmentSectionFailureMechanism
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ [FailureMechanismEntityId],
+ [FailureMechanismName]
+ FROM AssessmentSectionEntity
+ JOIN FailureMechanismEntity USING(AssessmentSectionEntityId)
+ JOIN TempFailureMechanisms USING(FailureMechanismType);
+
+CREATE TEMP TABLE TempChanges
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg]
+);
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[BelowPhreaticLevelMean] || "' voor het gemiddelde van parameter 'Verzadigd gewicht' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[BelowPhreaticLevelMean] IS NOT psl.[BelowPhreaticLevelMean];
+
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[BelowPhreaticLevelDeviation] || "' voor de standaardafwijking van parameter 'Verzadigd gewicht' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[BelowPhreaticLevelDeviation] IS NOT psl.[BelowPhreaticLevelDeviation];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[BelowPhreaticLevelShift] || "' voor de verschuiving van parameter 'Verzadigd gewicht' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[BelowPhreaticLevelShift] IS NOT psl.[BelowPhreaticLevelShift];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[DiameterD70Mean] || "' voor het gemiddelde van parameter 'd70' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[DiameterD70Mean] IS NOT psl.[DiameterD70Mean];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[DiameterD70CoefficientOfVariation] || "' voor de variatieco" || CAST(X'c3ab' AS TEXT) || "ffici" || CAST(X'c3ab' AS TEXT) || "nt van parameter 'd70' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[DiameterD70CoefficientOfVariation] IS NOT psl.[DiameterD70CoefficientOfVariation];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[PermeabilityMean] || "' voor het gemiddelde van parameter 'Doorlatendheid' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[PermeabilityMean] IS NOT psl.[PermeabilityMean];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[PermeabilityCoefficientOfVariation] || "' voor de variatieco" || CAST(X'c3ab' AS TEXT) || "ffici" || CAST(X'c3ab' AS TEXT) || "nt van parameter 'Doorlatendheid' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[PermeabilityCoefficientOfVariation] IS NOT psl.[PermeabilityCoefficientOfVariation];
+
+/*
+* Log changed simple assessment results
+*/
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM ClosingStructuresSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].ClosingStructuresSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM GrassCoverErosionOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM GrassCoverSlipOffInwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM GrassCoverSlipOffOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM HeightStructuresSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].HeightStructuresSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM MacroStabilityInwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].MacroStabilityInwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM MacroStabilityOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].MacroStabilityOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM MicrostabilitySectionResultEntity as sre
+ JOIN [SOURCEPROJECT].MicrostabilitySectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM PipingSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].PipingSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM PipingStructureSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].PipingStructureSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM StrengthStabilityLengthwiseConstructionSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM TechnicalInnovationSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].TechnicalInnovationSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM WaterPressureAsphaltCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten met de waarde 'Voldoende / Niet relevant' voor de eenvoudige toets van dit toetsspoor zijn omgezet naar 'NVT'."
+ FROM WaveImpactAsphaltCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerOne] = 2;
+
+/*
+* Log removed detailed assessment results
+*/
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM StabilityStoneCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM WaveImpactAsphaltCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM GrassCoverErosionOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM DuneErosionSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].DuneErosionSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM MicrostabilitySectionResultEntity as sre
+ JOIN [SOURCEPROJECT].MicrostabilitySectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM GrassCoverSlipOffOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM GrassCoverSlipOffInwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de gedetailleerde toets van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM PipingStructureSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].PipingStructureSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerTwoA] != 1;
+
+/*
+* Log removed tailor made assessment results
+*/
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM StabilityStoneCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM WaveImpactAsphaltCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM GrassCoverErosionOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM DuneErosionSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].DuneErosionSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM MacroStabilityOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].MacroStabilityOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM MicrostabilitySectionResultEntity as sre
+ JOIN [SOURCEPROJECT].MicrostabilitySectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM WaterPressureAsphaltCoverSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM GrassCoverSlipOffOutwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM GrassCoverSlipOffInwardsSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM PipingStructureSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].PipingStructureSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM StrengthStabilityLengthwiseConstructionSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "Alle resultaten voor de toets op maat van dit toetsspoor konden niet worden omgezet naar een geldig resultaat en zijn verwijderd."
+ FROM TechnicalInnovationSectionResultEntity as sre
+ JOIN [SOURCEPROJECT].TechnicalInnovationSectionResultEntity AS source ON sre.[rowid] = source.[rowid]
+ JOIN FailureMechanismSectionEntity as fms ON fms.[FailureMechanismSectionEntityId] = sre.[FailureMechanismSectionEntityId]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = fms.[FailureMechanismEntityId]
+ WHERE source.[LayerThree] IS NOT NULL;
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde van '" || source.[ProbabilityOrFrequencyOpenStructureBeforeFlooding] || "' van parameter 'Kans op open staan bij naderend hoogwater' van kunstwerk '" || source.[Name] || "' is ongeldig en is veranderd naar NaN."
+ FROM ClosingStructureEntity AS cs
+ JOIN [SOURCEPROJECT].ClosingStructureEntity AS source ON cs.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = cs.[FailureMechanismEntityId]
+ WHERE source.[ProbabilityOrFrequencyOpenStructureBeforeFlooding] IS NOT cs.[ProbabilityOpenStructureBeforeFlooding];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde van '" || source.[IdenticalApertures] || "' van parameter 'Aantal identieke doorstroomopeningen' van kunstwerk '" || source.[Name] || "' is ongeldig en is veranderd naar 1."
+ FROM ClosingStructureEntity AS cs
+ JOIN [SOURCEPROJECT].ClosingStructureEntity AS source ON cs.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = cs.[FailureMechanismEntityId]
+ WHERE source.[IdenticalApertures] != cs.[IdenticalApertures];
+
+/*
+* Log changes that are applied to closing and stability point structure calculations
+*/
+CREATE TEMP TABLE TempMigratedStructuresCalculationGroupMapping
+(
+ 'CalculationGroupEntityId' INTEGER NOT NULL,
+ 'FailureMechanismEntityId' INTEGER NOT NULL,
+ PRIMARY KEY
+ (
+ 'CalculationGroupEntityId'
+ )
+);
+
+INSERT INTO TempMigratedStructuresCalculationGroupMapping(
+ [CalculationGroupEntityId],
+ [FailureMechanismEntityId]
+)
+SELECT
+ [CalculationGroupEntityId],
+ [FailureMechanismEntityId]
+FROM
+(
+WITH RECURSIVE CalculationGroupEntities(CalculationGroupEntityId, ParentCalculationGroupEntityId, FailureMechanismEntityId) AS (
+SELECT
+ CalculationGroupEntityId,
+ NULL,
+ FailureMechanismEntityId
+FROM FailureMechanismEntity
+WHERE FailureMechanismEntity.FailureMechanismType = 10
+OR FailureMechanismEntity.FailureMechanismType = 12
+UNION ALL
+SELECT
+ CalculationGroupEntity.CalculationGroupEntityId,
+ CalculationGroupEntity.ParentCalculationGroupEntityId,
+ CalculationGroupEntities.FailureMechanismEntityId
+FROM CalculationGroupEntity, CalculationGroupEntities
+WHERE CalculationGroupEntity.ParentCalculationGroupEntityId = CalculationGroupEntities.CalculationGroupEntityId
+)
+SELECT
+ CalculationGroupEntities.CalculationGroupEntityId AS CalculationGroupEntityId,
+ CalculationGroupEntities.FailureMechanismEntityId AS FailureMechanismEntityId
+FROM CalculationGroupEntities
+ORDER BY FailureMechanismEntityId
+);
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde van '" || source.[IdenticalApertures] || "' van parameter 'Aantal identieke doorstroomopeningen' van berekening '" || source.[Name] || "' is ongeldig en is veranderd naar 1."
+ FROM ClosingStructuresCalculationEntity AS cs
+ JOIN [SOURCEPROJECT].ClosingStructuresCalculationEntity AS source ON cs.[rowid] = source.[rowid]
+ JOIN TempMigratedStructuresCalculationGroupMapping mapping USING(CalculationGroupEntityId)
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = mapping.[FailureMechanismEntityId]
+ WHERE source.[IdenticalApertures] != cs.[IdenticalApertures];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde van '" || source.[LevellingCount] || "' van parameter 'Aantal nivelleringen per jaar' van berekening '" || source.[Name] || "' is ongeldig en is veranderd naar 0."
+ FROM StabilityPointStructuresCalculationEntity AS sps
+ JOIN [SOURCEPROJECT].StabilityPointStructuresCalculationEntity AS source ON sps.[rowid] = source.[rowid]
+ JOIN TempMigratedStructuresCalculationGroupMapping mapping USING(CalculationGroupEntityId)
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = mapping.[FailureMechanismEntityId]
+ WHERE source.[LevellingCount] != sps.[LevellingCount];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde van '" || source.[VerticalDistance] || "' van parameter 'Afstand onderkant wand en teen van de dijk/berm' van berekening '" || source.[Name] || "' is ongeldig en is veranderd naar NaN."
+ FROM StabilityPointStructuresCalculationEntity AS sps
+ JOIN [SOURCEPROJECT].StabilityPointStructuresCalculationEntity AS source ON sps.[rowid] = source.[rowid]
+ JOIN TempMigratedStructuresCalculationGroupMapping mapping USING(CalculationGroupEntityId)
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = mapping.[FailureMechanismEntityId]
+ WHERE source.[VerticalDistance] IS NOT sps.[VerticalDistance];
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+WITH RECURSIVE
+FailureMechanismMessages
+(
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ [level]
+) AS (
+SELECT DISTINCT
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ NULL,
+ 1
+ FROM TempChanges
+ UNION
+SELECT [FailureMechanismId],
+ NULL,
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ 2
+ FROM TempChanges
+ WHERE TempChanges.[FailureMechanismId] IS [FailureMechanismId]
+ ORDER BY 1, 3
+),
+AssessmentSectionFailureMechanismMessages
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg],
+ [level]
+) AS (
+SELECT DISTINCT
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ NULL,
+ NULL,
+ NULL,
+ 0
+ FROM FailureMechanismMessages
+ WHERE [AssessmentSectionId] IS NOT NULL
+ UNION
+SELECT
+ [AssessmentSectionId],
+ NULL,
+ fmm.[FailureMechanismId],
+ fmm.[FailureMechanismName],
+ [msg],
+ fmm.[level]
+ FROM FailureMechanismMessages AS fmm
+ WHERE fmm.[AssessmentSectionId] IS [AssessmentSectionId]
+ ORDER BY 1, 3, 6
+)
+SELECT
+ "17.3",
+ "18.1",
+ CASE WHEN [AssessmentSectionName] IS NOT NULL
+ THEN "* Traject: '" || [AssessmentSectionName] || "'"
+ ELSE
+ CASE WHEN [FailureMechanismName] IS NOT NULL
+ THEN " + Toetsspoor: '" || [FailureMechanismName] || "'"
+ ELSE
+ " - " || [msg]
+ END
+ END
+FROM AssessmentSectionFailureMechanismMessages;
+
+DROP TABLE TempFailureMechanisms;
+DROP TABLE TempAssessmentSectionFailureMechanism;
+DROP TABLE TempMigratedStructuresCalculationGroupMapping;
+DROP TABLE TempChanges;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "17.3",
+ "18.1",
+ "* Geen aanpassingen."
+ WHERE (
+ SELECT COUNT() FROM [LOGDATABASE].MigrationLogEntity
+ WHERE [FromVersion] = "17.3"
+ ) IS 1;
+
+DETACH LOGDATABASE;
+
+DETACH SOURCEPROJECT;
+
+PRAGMA foreign_keys = ON;
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_18.1_19.1.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_18.1_19.1.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_18.1_19.1.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,547 @@
+ /*
+Migration script for migrating Ringtoets databases.
+SourceProject version: 18.1
+TargetProject version: 19.1
+*/
+PRAGMA foreign_keys = OFF;
+
+ATTACH DATABASE "{0}" AS SOURCEPROJECT;
+
+INSERT INTO AssessmentSectionEntity (
+ [AssessmentSectionEntityId],
+ [ProjectEntityId],
+ [HydraulicLocationCalculationCollectionEntity1Id],
+ [HydraulicLocationCalculationCollectionEntity2Id],
+ [HydraulicLocationCalculationCollectionEntity3Id],
+ [HydraulicLocationCalculationCollectionEntity4Id],
+ [HydraulicLocationCalculationCollectionEntity5Id],
+ [HydraulicLocationCalculationCollectionEntity6Id],
+ [HydraulicLocationCalculationCollectionEntity7Id],
+ [HydraulicLocationCalculationCollectionEntity8Id],
+ [Id],
+ [Name],
+ [Comments],
+ [LowerLimitNorm],
+ [SignalingNorm],
+ [NormativeNormType],
+ [Composition],
+ [ReferenceLinePointXml],
+ [Order])
+SELECT
+ [AssessmentSectionEntityId],
+ [ProjectEntityId],
+ [HydraulicLocationCalculationCollectionEntity1Id],
+ [HydraulicLocationCalculationCollectionEntity2Id],
+ [HydraulicLocationCalculationCollectionEntity3Id],
+ [HydraulicLocationCalculationCollectionEntity4Id],
+ [HydraulicLocationCalculationCollectionEntity5Id],
+ [HydraulicLocationCalculationCollectionEntity6Id],
+ [HydraulicLocationCalculationCollectionEntity7Id],
+ [HydraulicLocationCalculationCollectionEntity8Id],
+ [Id],
+ [Name],
+ [Comments],
+ [LowerLimitNorm],
+ [SignalingNorm],
+ [NormativeNormType],
+ [Composition],
+ [ReferenceLinePointXml],
+ [Order]
+FROM SOURCEPROJECT.AssessmentSectionEntity;
+INSERT INTO BackgroundDataEntity (
+ [BackgroundDataEntityId],
+ [AssessmentSectionEntityId],
+ [Name],
+ [IsVisible],
+ [Transparency],
+ [BackgroundDataType])
+SELECT
+ [BackgroundDataEntityId],
+ [AssessmentSectionEntityId],
+ [Name],
+ [IsVisible],
+ CASE
+ WHEN [Transparency] > 0
+ THEN [Transparency]
+ ELSE
+ 0.6
+ END,
+ [BackgroundDataType]
+FROM [SOURCEPROJECT].BackgroundDataEntity;
+INSERT INTO BackgroundDataMetaEntity SELECT * FROM [SOURCEPROJECT].BackgroundDataMetaEntity;
+INSERT INTO CalculationGroupEntity SELECT * FROM [SOURCEPROJECT].CalculationGroupEntity;
+INSERT INTO ClosingStructureEntity SELECT * FROM [SOURCEPROJECT].ClosingStructureEntity;
+INSERT INTO ClosingStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresCalculationEntity;
+INSERT INTO ClosingStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresFailureMechanismMetaEntity;
+INSERT INTO ClosingStructuresOutputEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresOutputEntity;
+INSERT INTO ClosingStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresSectionResultEntity;
+INSERT INTO DikeProfileEntity SELECT * FROM [SOURCEPROJECT].DikeProfileEntity;
+INSERT INTO DuneErosionFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].DuneErosionFailureMechanismMetaEntity;
+INSERT INTO DuneErosionSectionResultEntity SELECT * FROM [SOURCEPROJECT].DuneErosionSectionResultEntity;
+INSERT INTO DuneLocationCalculationCollectionEntity SELECT * FROM [SOURCEPROJECT].DuneLocationCalculationCollectionEntity;
+INSERT INTO DuneLocationCalculationEntity SELECT * FROM [SOURCEPROJECT].DuneLocationCalculationEntity;
+INSERT INTO DuneLocationCalculationOutputEntity SELECT * FROM [SOURCEPROJECT].DuneLocationCalculationOutputEntity;
+INSERT INTO DuneLocationEntity SELECT * FROM [SOURCEPROJECT].DuneLocationEntity;
+INSERT INTO FailureMechanismEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismEntity;
+INSERT INTO FailureMechanismSectionEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismSectionEntity;
+INSERT INTO FaultTreeIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].FaultTreeIllustrationPointEntity;
+INSERT INTO FaultTreeIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].FaultTreeIllustrationPointStochastEntity;
+INSERT INTO FaultTreeSubmechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].FaultTreeSubmechanismIllustrationPointEntity;
+INSERT INTO ForeshoreProfileEntity SELECT * FROM [SOURCEPROJECT].ForeshoreProfileEntity;
+INSERT INTO GeneralResultFaultTreeIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].GeneralResultFaultTreeIllustrationPointEntity;
+INSERT INTO GeneralResultFaultTreeIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].GeneralResultFaultTreeIllustrationPointStochastEntity;
+INSERT INTO GeneralResultSubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].GeneralResultSubMechanismIllustrationPointEntity;
+INSERT INTO GeneralResultSubMechanismIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].GeneralResultSubMechanismIllustrationPointStochastEntity;
+INSERT INTO GrassCoverErosionInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity;
+INSERT INTO GrassCoverErosionInwardsDikeHeightOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsDikeHeightOutputEntity;
+INSERT INTO GrassCoverErosionInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionInwardsOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsOutputEntity;
+INSERT INTO GrassCoverErosionInwardsOvertoppingRateOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsOvertoppingRateOutputEntity;
+INSERT INTO GrassCoverErosionInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsCalculationEntity;
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsOutputEntity;
+INSERT INTO GrassCoverSlipOffInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity;
+INSERT INTO GrassCoverSlipOffOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity;
+INSERT INTO HeightStructureEntity SELECT * FROM [SOURCEPROJECT].HeightStructureEntity;
+INSERT INTO HeightStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresCalculationEntity;
+INSERT INTO HeightStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresFailureMechanismMetaEntity;
+INSERT INTO HeightStructuresOutputEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresOutputEntity;
+INSERT INTO HeightStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresSectionResultEntity;
+INSERT INTO HydraulicLocationCalculationCollectionEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationCalculationCollectionEntity;
+INSERT INTO HydraulicLocationCalculationEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationCalculationEntity;
+INSERT INTO HydraulicLocationEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationEntity;
+INSERT INTO HydraulicLocationOutputEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationOutputEntity;
+INSERT INTO IllustrationPointResultEntity SELECT * FROM [SOURCEPROJECT].IllustrationPointResultEntity;
+INSERT INTO MacroStabilityInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationEntity;
+INSERT INTO MacroStabilityInwardsCalculationOutputEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCalculationOutputEntity;
+INSERT INTO MacroStabilityInwardsCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsCharacteristicPointEntity;
+INSERT INTO MacroStabilityInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsFailureMechanismMetaEntity;
+INSERT INTO MacroStabilityInwardsPreconsolidationStressEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsPreconsolidationStressEntity;
+INSERT INTO MacroStabilityInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSectionResultEntity;
+INSERT INTO MacroStabilityInwardsSoilLayerOneDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilLayerOneDEntity;
+INSERT INTO MacroStabilityInwardsSoilLayerTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilLayerTwoDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileOneDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileOneDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileTwoDEntity;
+INSERT INTO MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsSoilProfileTwoDSoilLayerTwoDEntity;
+INSERT INTO MacroStabilityInwardsStochasticSoilProfileEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityInwardsStochasticSoilProfileEntity;
+INSERT INTO MacroStabilityOutwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityOutwardsFailureMechanismMetaEntity;
+INSERT INTO MacroStabilityOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityOutwardsSectionResultEntity;
+INSERT INTO MicrostabilitySectionResultEntity SELECT * FROM [SOURCEPROJECT].MicrostabilitySectionResultEntity;
+INSERT INTO PipingCalculationEntity SELECT * FROM [SOURCEPROJECT].PipingCalculationEntity;
+INSERT INTO PipingCalculationOutputEntity SELECT * FROM [SOURCEPROJECT].PipingCalculationOutputEntity;
+INSERT INTO PipingCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].PipingCharacteristicPointEntity;
+INSERT INTO PipingFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity;
+INSERT INTO PipingSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingSectionResultEntity;
+INSERT INTO PipingSoilLayerEntity(
+ [PipingSoilLayerEntityId],
+ [PipingSoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ [BelowPhreaticLevelMean] ,
+ [BelowPhreaticLevelDeviation],
+ [BelowPhreaticLevelShift],
+ [DiameterD70Mean],
+ [DiameterD70CoefficientOfVariation],
+ [PermeabilityMean],
+ [PermeabilityCoefficientOfVariation],
+ [Order])
+SELECT
+ [PipingSoilLayerEntityId],
+ [PipingSoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ CASE
+ WHEN [BelowPhreaticLevelMean] < 0.005
+ THEN NULL
+ ELSE
+ [BelowPhreaticLevelMean]
+ END,
+ [BelowPhreaticLevelDeviation],
+ [BelowPhreaticLevelShift],
+ CASE
+ WHEN [DiameterD70Mean] <= 0.0000005
+ THEN NULL
+ ELSE
+ [DiameterD70Mean]
+ END,
+ [DiameterD70CoefficientOfVariation],
+ CASE
+ WHEN [PermeabilityMean] <= 0.0000005
+ THEN NULL
+ ELSE
+ [PermeabilityMean]
+ END,
+ [PermeabilityCoefficientOfVariation],
+ [Order]
+FROM [SOURCEPROJECT].PipingSoilLayerEntity;
+INSERT INTO PipingSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingSoilProfileEntity;
+INSERT INTO PipingStochasticSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingStochasticSoilProfileEntity;
+INSERT INTO PipingStructureFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].PipingStructureFailureMechanismMetaEntity;
+INSERT INTO PipingStructureSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingStructureSectionResultEntity;
+INSERT INTO ProjectEntity SELECT * FROM [SOURCEPROJECT].ProjectEntity;
+INSERT INTO StabilityPointStructureEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructureEntity;
+INSERT INTO StabilityPointStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresCalculationEntity;
+INSERT INTO StabilityPointStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresFailureMechanismMetaEntity;
+INSERT INTO StabilityPointStructuresOutputEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresOutputEntity;
+INSERT INTO StabilityPointStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresSectionResultEntity;
+INSERT INTO StabilityStoneCoverFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverFailureMechanismMetaEntity;
+INSERT INTO StabilityStoneCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsCalculationEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsOutputEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsOutputEntity;
+INSERT INTO StochastEntity SELECT * FROM [SOURCEPROJECT].StochastEntity;
+INSERT INTO StochasticSoilModelEntity SELECT * FROM [SOURCEPROJECT].StochasticSoilModelEntity;
+INSERT INTO StrengthStabilityLengthwiseConstructionSectionResultEntity SELECT * FROM [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity;
+INSERT INTO SubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].SubMechanismIllustrationPointEntity;
+INSERT INTO SubMechanismIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].SubMechanismIllustrationPointStochastEntity;
+INSERT INTO SurfaceLineEntity SELECT * FROM [SOURCEPROJECT].SurfaceLineEntity;
+INSERT INTO TechnicalInnovationSectionResultEntity SELECT * FROM [SOURCEPROJECT].TechnicalInnovationSectionResultEntity;
+INSERT INTO TopLevelFaultTreeIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].TopLevelFaultTreeIllustrationPointEntity;
+INSERT INTO TopLevelSubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].TopLevelSubMechanismIllustrationPointEntity;
+INSERT INTO WaterPressureAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity;
+INSERT INTO VersionEntity (
+ [VersionId],
+ [Version],
+ [Timestamp],
+ [FingerPrint])
+SELECT [VersionId],
+ "19.1",
+ [Timestamp],
+ [FingerPrint]
+FROM [SOURCEPROJECT].VersionEntity;
+INSERT INTO WaveImpactAsphaltCoverFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverFailureMechanismMetaEntity;
+INSERT INTO WaveImpactAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsCalculationEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsOutputEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsOutputEntity;
+
+/*
+Insert new data
+*/
+
+-- Directory retrieval was taken from https://stackoverflow.com/questions/21388820/how-to-get-the-last-index-of-a-substring-in-sqlite
+INSERT INTO HydraulicBoundaryDatabaseEntity (
+ [AssessmentSectionEntityId],
+ [Version],
+ [FilePath],
+ [HydraulicLocationConfigurationSettingsFilePath],
+ [HydraulicLocationConfigurationSettingsScenarioName],
+ [HydraulicLocationConfigurationSettingsYear],
+ [HydraulicLocationConfigurationSettingsScope],
+ [HydraulicLocationConfigurationSettingsSeaLevel],
+ [HydraulicLocationConfigurationSettingsRiverDischarge],
+ [HydraulicLocationConfigurationSettingsLakeLevel],
+ [HydraulicLocationConfigurationSettingsWindDirection],
+ [HydraulicLocationConfigurationSettingsWindSpeed],
+ [HydraulicLocationConfigurationSettingsComment])
+SELECT
+ [AssessmentSectionEntityId],
+ [HydraulicDatabaseVersion],
+ [HydraulicDatabaseLocation],
+ rtrim([HydraulicDatabaseLocation], replace([HydraulicDatabaseLocation], '\', '')) || 'hlcd.sqlite',
+ "Conform WBI2017",
+ 2023,
+ "Conform WBI2017",
+ "Conform WBI2017",
+ "Conform WBI2017",
+ "Conform WBI2017",
+ "Conform WBI2017",
+ "Conform WBI2017",
+ "Gegenereerd door Ringtoets (conform WBI2017)"
+FROM SOURCEPROJECT.AssessmentSectionEntity
+WHERE [HydraulicDatabaseLocation] IS NOT NULL;
+
+/*
+Write migration logging
+*/
+ATTACH DATABASE "{1}" AS LOGDATABASE;
+
+CREATE TABLE IF NOT EXISTS [LOGDATABASE].'MigrationLogEntity'
+(
+ 'MigrationLogEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FromVersion' VARCHAR(20) NOT NULL,
+ 'ToVersion' VARCHAR(20) NOT NULL,
+ 'LogMessage' TEXT NOT NULL
+);
+
+CREATE TEMP TABLE TempFailureMechanisms
+(
+ 'FailureMechanismType' INTEGER NOT NULL,
+ 'FailureMechanismName' VARCHAR(255) NOT NULL
+);
+
+INSERT INTO TempFailureMechanisms VALUES (1, 'Piping');
+INSERT INTO TempFailureMechanisms VALUES (2, 'Macrostabiliteit binnenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (3, 'Golfklappen op asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (4, 'Grasbekleding erosie buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (5, 'Grasbekleding afschuiven buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (6, 'Grasbekleding erosie kruin en binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (7, 'Stabiliteit steenzetting');
+INSERT INTO TempFailureMechanisms VALUES (8, 'Duinafslag');
+INSERT INTO TempFailureMechanisms VALUES (9, 'Hoogte kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (10, 'Betrouwbaarheid sluiting kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (11, 'Piping bij kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (12, 'Sterkte en stabiliteit puntconstructies');
+INSERT INTO TempFailureMechanisms VALUES (13, 'Macrostabiliteit buitenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (14, 'Microstabiliteit');
+INSERT INTO TempFailureMechanisms VALUES (15, 'Wateroverdruk bij asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (16, 'Grasbekleding afschuiven binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (17, 'Sterkte en stabiliteit langsconstructies');
+INSERT INTO TempFailureMechanisms VALUES (18, 'Technische innovaties');
+
+CREATE TEMP TABLE TempAssessmentSectionFailureMechanism
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName]
+);
+
+INSERT INTO TempAssessmentSectionFailureMechanism
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ [FailureMechanismEntityId],
+ [FailureMechanismName]
+FROM AssessmentSectionEntity
+JOIN FailureMechanismEntity USING (AssessmentSectionEntityId)
+JOIN TempFailureMechanisms USING (FailureMechanismType);
+
+CREATE TEMP TABLE TempAssessmentSectionChanges
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [Order],
+ [msg]
+);
+
+INSERT INTO TempAssessmentSectionChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ 0,
+ "Er worden standaardwaarden conform WBI2017 voor de HLCD bestand informatie gebruikt."
+FROM HydraulicBoundaryDatabaseEntity
+JOIN AssessmentSectionEntity AS ase USING(AssessmentSectionEntityId)
+JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[AssessmentSectionId] = ase.AssessmentSectionEntityId;
+
+INSERT INTO TempAssessmentSectionChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ 1,
+ "De waarde voor de transparantie van de achtergrondkaart is aangepast naar 0.60."
+FROM AssessmentSectionEntity AS ase
+JOIN BackgroundDataEntity AS bd USING(AssessmentSectionEntityId)
+JOIN [SOURCEPROJECT].BackgroundDataEntity AS source USING(BackgroundDataEntityId)
+JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[AssessmentSectionId] = ase.AssessmentSectionEntityId
+WHERE source.[Transparency] != bd.Transparency;
+
+CREATE TEMP TABLE TempChanges
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg]
+);
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[BelowPhreaticLevelMean] || "' voor het gemiddelde van parameter 'Verzadigd gewicht' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[BelowPhreaticLevelMean] IS NOT psl.[BelowPhreaticLevelMean];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[DiameterD70Mean] || "' voor het gemiddelde van parameter 'd70' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[DiameterD70Mean] IS NOT psl.[DiameterD70Mean];
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De waarde '" || source.[PermeabilityMean] || "' voor het gemiddelde van parameter 'Doorlatendheid' van ondergrondlaag '" || source.[MaterialName] || "' is ongeldig en is veranderd naar NaN."
+ FROM PipingSoilLayerEntity as psl
+ JOIN PipingSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN PipingStochasticSoilProfileEntity USING(PipingSoilProfileEntityId)
+ JOIN StochasticSoilModelEntity USING(StochasticSoilModelEntityId)
+ JOIN [SOURCEPROJECT].PipingSoilLayerEntity AS source ON psl.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = [FailureMechanismEntityId]
+ WHERE source.[PermeabilityMean] IS NOT psl.[PermeabilityMean];
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+VALUES ("18.1", "19.1", "Gevolgen van de migratie van versie 18.1 naar versie 19.1:");
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+WITH RECURSIVE
+FailureMechanismMessages
+(
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ [level]
+) AS (
+SELECT DISTINCT
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ NULL,
+ 1
+ FROM TempChanges
+ UNION
+SELECT
+ [FailureMechanismId],
+ NULL,
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ 2
+ FROM TempChanges
+ WHERE TempChanges.[FailureMechanismId] IS [FailureMechanismId]
+ ORDER BY [FailureMechanismId], [AssessmentSectionId]
+),
+AssessmentSectionFailureMechanismMessages
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [IsAssessmentSectionHeader],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg],
+ [level],
+ [Order]
+) AS (
+ SELECT DISTINCT
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ 1,
+ NULL,
+ NULL,
+ NULL,
+ 1,
+ 0
+ FROM
+ (
+ SELECT
+ [AssessmentSectionId],
+ [AssessmentSectionName]
+ FROM TempAssessmentSectionChanges
+ UNION
+ SELECT
+ [AssessmentSectionId],
+ [AssessmentSectionName]
+ FROM FailureMechanismMessages
+ WHERE [AssessmentSectionId] IS NOT NULL
+ )
+
+ UNION
+
+ SELECT
+ *
+ FROM
+ (
+ SELECT
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ 0 AS [IsAssessmentSectionHeader],
+ NULL AS [FailureMechanismId],
+ NULL,
+ [msg],
+ 1 AS [level],
+ [Order]
+ FROM TempAssessmentSectionChanges
+
+ UNION
+
+ SELECT
+ [AssessmentSectionId],
+ NULL,
+ 0 AS [IsAssessmentSectionHeader],
+ fmm.[FailureMechanismId] AS [FailureMechanismId],
+ fmm.[FailureMechanismName],
+ [msg],
+ fmm.[level] AS [level],
+ 1 AS [Order]
+ FROM FailureMechanismMessages AS fmm
+ WHERE fmm.[AssessmentSectionId] IS [AssessmentSectionId]
+
+ ) ORDER BY [AssessmentSectionId], [FailureMechanismId], [level], [IsAssessmentSectionHeader] DESC, [Order]
+)
+SELECT
+ "18.1",
+ "19.1",
+ CASE
+ WHEN [AssessmentSectionName] IS NOT NULL
+ THEN
+ CASE WHEN [IsAssessmentSectionHeader] IS 1
+ THEN "* Traject: '" || [AssessmentSectionName] || "'"
+ ELSE
+ " + " || [msg]
+ END
+ ELSE
+ CASE
+ WHEN [FailureMechanismName] IS NOT NULL
+ THEN " + Toetsspoor: '" || [FailureMechanismName] || "'"
+ ELSE
+ " - " || [msg]
+ END
+ END
+FROM AssessmentSectionFailureMechanismMessages;
+
+DROP TABLE TempFailureMechanisms;
+DROP TABLE TempAssessmentSectionFailureMechanism;
+DROP TABLE TempAssessmentSectionChanges;
+DROP TABLE TempChanges;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "18.1",
+ "19.1",
+ "* Geen aanpassingen."
+ WHERE (
+ SELECT COUNT() FROM [LOGDATABASE].MigrationLogEntity
+ WHERE [FromVersion] = "18.1"
+ ) IS 1;
+
+DETACH LOGDATABASE;
+
+DETACH SOURCEPROJECT;
+
+PRAGMA foreign_keys = ON;
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_5_17.1.sql
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_5_17.1.sql (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_5_17.1.sql (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,543 @@
+/*
+Migration script for migrating Ringtoets databases.
+SourceProject version: 5
+TargetProject version: 17.1
+*/
+PRAGMA foreign_keys = OFF;
+
+ATTACH DATABASE "{0}" AS SOURCEPROJECT;
+
+INSERT INTO AssessmentSectionEntity SELECT * FROM [SOURCEPROJECT].AssessmentSectionEntity;
+INSERT INTO CalculationGroupEntity SELECT * FROM [SOURCEPROJECT].CalculationGroupEntity;
+INSERT INTO CharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].CharacteristicPointEntity;
+INSERT INTO ClosingStructureEntity SELECT * FROM [SOURCEPROJECT].ClosingStructureEntity;
+INSERT INTO ClosingStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].ClosingStructureFailureMechanismMetaEntity;
+INSERT INTO ClosingStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresCalculationEntity;
+INSERT INTO ClosingStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].ClosingStructuresSectionResultEntity;
+INSERT INTO DikeProfileEntity (
+ [DikeProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [ForeshoreXml],
+ [DikeGeometryXml],
+ [DikeHeight],
+ [X],
+ [Y],
+ [X0],
+ [Order])
+SELECT
+ [DikeProfileEntityId],
+ [FailureMechanismEntityId],
+ CASE WHEN Suffix THEN [Name] ||
+ SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength)
+ || Suffix ELSE [Name] END as [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [ForeshoreXml],
+ [DikeGeometryXml],
+ [DikeHeight],
+ [X],
+ [Y],
+ [X0],
+ [Order]
+ FROM (SELECT *, MaxLength - LENGTH(NAME) as SuffixPreLength, (SELECT DP.rowid
+ FROM [SOURCEPROJECT].DikeProfileEntity
+ WHERE DP.DikeProfileEntityId > DikeProfileEntityId
+ AND DP.Name IS Name
+ AND DP.FailuremechanismEntityId = FailuremechanismEntityId) as Suffix
+ FROM [SOURCEPROJECT].DikeProfileEntity DP
+ JOIN (SELECT MAX(LENGTH(Name)) as MaxLength FROM [SOURCEPROJECT].DikeProfileEntity));
+INSERT INTO DuneErosionSectionResultEntity SELECT * FROM [SOURCEPROJECT].DuneErosionSectionResultEntity;
+INSERT INTO FailureMechanismEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismEntity;
+INSERT INTO FailureMechanismSectionEntity SELECT * FROM [SOURCEPROJECT].FailureMechanismSectionEntity;
+INSERT INTO ForeshoreProfileEntity (
+ [ForeshoreProfileEntityId],
+ [FailureMechanismEntityId],
+ [Id],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [GeometryXml],
+ [X],
+ [Y],
+ [X0],
+ [Order])
+SELECT
+ [ForeshoreProfileEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [Name],
+ [Orientation],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [GeometryXml],
+ [X],
+ [Y],
+ [X0],
+ [Order]
+ FROM [SOURCEPROJECT].ForeshoreProfileEntity;
+INSERT INTO GrassCoverErosionInwardsCalculationEntity (
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [HydraulicLocationEntityId],
+ [DikeProfileEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [Orientation],
+ [CriticalFlowRateMean],
+ [CriticalFlowRateStandardDeviation],
+ [UseForeshore],
+ [DikeHeightCalculationType],
+ [DikeHeight],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ [OvertoppingRateCalculationType])
+SELECT
+ [GrassCoverErosionInwardsCalculationEntityId],
+ [CalculationGroupEntityId],
+ [HydraulicLocationEntityId],
+ [DikeProfileEntityId],
+ [Order],
+ [Name],
+ [Comments],
+ [Orientation],
+ [CriticalFlowRateMean],
+ [CriticalFlowRateStandardDeviation],
+ [UseForeshore],
+ [DikeHeightCalculationType],
+ [DikeHeight],
+ [UseBreakWater],
+ [BreakWaterType],
+ [BreakWaterHeight],
+ 1
+ FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity;
+INSERT INTO GrassCoverErosionInwardsFailureMechanismMetaEntity (
+ [GrassCoverErosionInwardsFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ [DikeProfileCollectionSourcePath])
+SELECT
+ [GrassCoverErosionInwardsFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [N],
+ CASE WHEN COUNT([DikeProfileEntityId]) THEN "" ELSE NULL END
+ FROM [SOURCEPROJECT].GrassCoverErosionInwardsFailureMechanismMetaEntity
+ LEFT JOIN [SOURCEPROJECT].DikeProfileEntity USING (FailureMechanismEntityId)
+ GROUP BY FailureMechanismEntityId;
+INSERT INTO GrassCoverErosionInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsFailureMechanismMetaEntity;
+INSERT INTO GrassCoverErosionOutwardsHydraulicLocationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationEntity;
+INSERT INTO GrassCoverErosionOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsSectionResultEntity;
+INSERT INTO GrassCoverErosionOutwardsWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionOutwardsWaveConditionsCalculationEntity;
+INSERT INTO GrassCoverSlipOffInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffInwardsSectionResultEntity;
+INSERT INTO GrassCoverSlipOffOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].GrassCoverSlipOffOutwardsSectionResultEntity;
+INSERT INTO HeightStructureEntity SELECT * FROM [SOURCEPROJECT].HeightStructureEntity;
+INSERT INTO HeightStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresCalculationEntity;
+INSERT INTO HeightStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresFailureMechanismMetaEntity;
+INSERT INTO HeightStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].HeightStructuresSectionResultEntity;
+INSERT INTO HydraulicLocationEntity SELECT * FROM [SOURCEPROJECT].HydraulicLocationEntity;
+INSERT INTO MacrostabilityInwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacrostabilityInwardsSectionResultEntity;
+INSERT INTO MacrostabilityOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacrostabilityOutwardsSectionResultEntity;
+INSERT INTO MicrostabilitySectionResultEntity SELECT * FROM [SOURCEPROJECT].MicrostabilitySectionResultEntity;
+INSERT INTO PipingCalculationEntity SELECT * FROM [SOURCEPROJECT].PipingCalculationEntity;
+INSERT INTO PipingFailureMechanismMetaEntity (
+ [PipingFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [A],
+ [WaterVolumetricWeight],
+ [StochasticSoilModelSourcePath],
+ [SurfaceLineSourcePath])
+SELECT
+ [PipingFailureMechanismMetaEntityId],
+ [FailureMechanismEntityId],
+ [A],
+ [WaterVolumetricWeight],
+ CASE WHEN COUNT([StochasticSoilModelEntityId]) THEN "" ELSE NULL END,
+ CASE WHEN COUNT([SurfaceLineEntityId]) THEN "" ELSE NULL END
+ FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity
+ LEFT JOIN [SOURCEPROJECT].StochasticSoilModelEntity USING (FailureMechanismEntityId)
+ LEFT JOIN [SOURCEPROJECT].SurfaceLineEntity USING (FailureMechanismEntityId)
+ GROUP BY FailureMechanismEntityId;
+INSERT INTO PipingSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingSectionResultEntity;
+INSERT INTO PipingStructureSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingStructureSectionResultEntity;
+INSERT INTO ProjectEntity SELECT * FROM [SOURCEPROJECT].ProjectEntity;
+INSERT INTO SoilLayerEntity
+SELECT
+ [SoilLayerEntityId],
+ [SoilProfileEntityId],
+ [Top],
+ [IsAquifer],
+ [Color],
+ [MaterialName],
+ [BelowPhreaticLevelMean],
+ [BelowPhreaticLevelDeviation],
+ [DiameterD70Mean],
+ ROUND([DiameterD70Deviation] / [DiameterD70Mean], 6),
+ [BelowPhreaticLevelShift],
+ [PermeabilityMean],
+ ROUND([PermeabilityDeviation] / [PermeabilityMean], 6),
+ [Order]
+ FROM [SOURCEPROJECT].SoilLayerEntity;
+INSERT INTO SoilProfileEntity SELECT * FROM [SOURCEPROJECT].SoilProfileEntity;
+INSERT INTO StabilityPointStructureEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructureEntity;
+INSERT INTO StabilityPointStructuresCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresCalculationEntity;
+INSERT INTO StabilityPointStructuresFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresFailureMechanismMetaEntity;
+INSERT INTO StabilityPointStructuresSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityPointStructuresSectionResultEntity;
+INSERT INTO StabilityStoneCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverSectionResultEntity;
+INSERT INTO StabilityStoneCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsCalculationEntity;
+INSERT INTO StochasticSoilModelEntity (
+ [StochasticSoilModelEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [SegmentName],
+ [StochasticSoilModelSegmentPointXml],
+ [Order])
+SELECT
+ [StochasticSoilModelEntityId],
+ [FailuremechanismEntityId],
+ CASE WHEN Suffix THEN [Name] || ' (' || SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength) || Suffix || ')' ELSE [Name] END AS [Name],
+ [SegmentName],
+ [StochasticSoilModelSegmentPointXml],
+ [Order]
+ FROM
+ (
+ SELECT *, MAX(MaxLength - LENGTH(NAME), 0) as SuffixPreLength,
+ (
+ SELECT COUNT()
+ FROM [SOURCEPROJECT].StochasticSoilModelEntity
+ WHERE SSM.StochasticSoilModelEntityId > StochasticSoilModelEntityId
+ AND SSM.Name IS Name
+ AND SSM.FailuremechanismEntityId = FailuremechanismEntityId
+ ) AS Suffix
+ FROM [SOURCEPROJECT].StochasticSoilModelEntity SSM
+ JOIN (
+ SELECT MAX(LENGTH(Name)-3) as MaxLength FROM [SOURCEPROJECT].StochasticSoilModelEntity
+ )
+ );
+INSERT INTO StochasticSoilProfileEntity
+SELECT
+ [StochasticSoilProfileEntityId],
+ [SoilProfileEntityId],
+ [StochasticSoilmodelEntityId],
+ 1,
+ CASE
+ WHEN [Probability] BETWEEN 0 AND 1 THEN [Probability]
+ ELSE 0
+ END as [Probability],
+ [Order]
+FROM [SOURCEPROJECT].StochasticSoilProfileEntity;
+INSERT INTO StrengthStabilityLengthwiseConstructionSectionResultEntity SELECT * FROM [SOURCEPROJECT].StrengthStabilityLengthwiseConstructionSectionResultEntity;
+INSERT INTO SurfaceLineEntity (
+ [SurfaceLineEntityId],
+ [FailureMechanismEntityId],
+ [Name],
+ [ReferenceLineIntersectionX],
+ [ReferenceLineIntersectionY],
+ [PointsXml],
+ [Order])
+SELECT
+ [SurfaceLineEntityId],
+ [FailuremechanismEntityId],
+ CASE WHEN Suffix THEN [Name] || ' (' || SUBSTR(QUOTE(ZEROBLOB((SuffixPreLength + 1) / 2)), 3, SuffixPreLength) || Suffix || ')' ELSE [Name] END AS [Name],
+ [ReferenceLineIntersectionX],
+ [ReferenceLineIntersectionY],
+ [PointsXml],
+ [Order]
+ FROM
+ (
+ SELECT *, MAX(MaxLength - LENGTH(NAME), 0) as SuffixPreLength,
+ (
+ SELECT COUNT()
+ FROM [SOURCEPROJECT].SurfaceLineEntity
+ WHERE SL.SurfaceLineEntityId > SurfaceLineEntityId
+ AND SL.Name IS Name
+ AND SL.FailuremechanismEntityId = FailuremechanismEntityId
+ ) AS Suffix
+ FROM [SOURCEPROJECT].SurfaceLineEntity SL
+ JOIN (
+ SELECT MAX(LENGTH(Name)-3) as MaxLength FROM [SOURCEPROJECT].SurfaceLineEntity
+ )
+ );
+INSERT INTO TechnicalInnovationSectionResultEntity SELECT * FROM [SOURCEPROJECT].TechnicalInnovationSectionResultEntity;
+INSERT INTO VersionEntity (
+ [VersionId],
+ [Version],
+ [Timestamp],
+ [FingerPrint])
+SELECT [VersionId],
+ "17.1",
+ [Timestamp],
+ [FingerPrint]
+ FROM [SOURCEPROJECT].VersionEntity;
+INSERT INTO WaterPressureAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaterPressureAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverSectionResultEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverSectionResultEntity;
+INSERT INTO WaveImpactAsphaltCoverWaveConditionsCalculationEntity SELECT * FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsCalculationEntity;
+
+/*
+Outputs are not migrated
+*/
+--ClosingStructuresOutputEntity
+--GrassCoverErosionInwardsDikeHeightOutputEntity
+--GrassCoverErosionInwardsOutputEntity
+--GrassCoverErosionOutwardsHydraulicLocationOutputEntity
+--GrassCoverErosionOutwardsWaveConditionsOutputEntity
+--HeightStructuresOutputEntity
+--HydraulicLocationOutputEntity
+--PipingCalculationOutputEntity
+--PipingSemiProbabilisticOutputEntity
+--StabilityPointStructuresOutputEntity
+--StabilityStoneCoverWaveConditionsOutputEntity
+--WaveImpactAsphaltCoverWaveConditionsOutputEntity
+
+/*
+Insert new data
+*/
+INSERT INTO DuneErosionFailureMechanismMetaEntity (
+ [FailureMechanismEntityId],
+ [N])
+SELECT FailureMechanismEntityId,
+ 2.0
+ FROM FailureMechanismEntity WHERE FailureMechanismType = 8;
+INSERT INTO BackgroundDataEntity (
+ [AssessmentSectionEntityId],
+ [Name],
+ [IsVisible],
+ [Transparency],
+ [BackgroundDataType])
+SELECT AssessmentSectionEntityId,
+ "Bing Maps - Satelliet",
+ 1,
+ 0.0,
+ 2
+ FROM AssessmentSectionEntity;
+INSERT INTO BackgroundDataMetaEntity(
+ [BackgroundDataEntityId],
+ [Key],
+ [Value])
+SELECT BackgroundDataEntityId,
+ "WellKnownTileSource",
+ "2"
+ FROM BackgroundDataEntity;
+
+/*
+Write migration logging
+*/
+ATTACH DATABASE "{1}" AS LOGDATABASE;
+
+CREATE TEMP TABLE TempLogOutputDeleted
+(
+ 'NrDeleted' INTEGER NOT NULL
+);
+
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].ClosingStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsDikeHeightOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionInwardsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].GrassCoverErosionOutwardsHydraulicLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].HeightStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].HydraulicLocationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].PipingCalculationOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].PipingSemiProbabilisticOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].StabilityPointStructuresOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].StabilityStoneCoverWaveConditionsOutputEntity;
+INSERT INTO TempLogOutputDeleted SELECT COUNT() FROM [SOURCEPROJECT].WaveImpactAsphaltCoverWaveConditionsOutputEntity;
+
+CREATE TABLE IF NOT EXISTS [LOGDATABASE].'MigrationLogEntity'
+(
+ 'MigrationLogEntityId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ 'FromVersion' VARCHAR(20) NOT NULL,
+ 'ToVersion' VARCHAR(20) NOT NULL,
+ 'LogMessage' TEXT NOT NULL
+);
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+VALUES ("5",
+ "17.1",
+ "Gevolgen van de migratie van versie 16.4 naar versie 17.1:");
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "5",
+ "17.1",
+ "* Alle berekende resultaten zijn verwijderd."
+ FROM TempLogOutputDeleted
+ WHERE [NrDeleted] > 0
+ LIMIT 1;
+
+DROP TABLE TempLogOutputDeleted;
+
+CREATE TEMP TABLE TempFailureMechanisms
+(
+ 'FailureMechanismType' INTEGER NOT NULL,
+ 'FailureMechanismName' VARCHAR(255) NOT NULL
+);
+
+INSERT INTO TempFailureMechanisms VALUES (1, 'Piping');
+INSERT INTO TempFailureMechanisms VALUES (2, 'Macrostabiliteit binnenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (3, 'Golfklappen op asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (4, 'Grasbekleding erosie buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (5, 'Grasbekleding afschuiven buitentalud');
+INSERT INTO TempFailureMechanisms VALUES (6, 'Grasbekleding erosie kruin en binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (7, 'Stabiliteit steenzetting');
+INSERT INTO TempFailureMechanisms VALUES (8, 'Duinafslag');
+INSERT INTO TempFailureMechanisms VALUES (9, 'Hoogte kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (10, 'Betrouwbaarheid sluiting kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (11, 'Piping bij kunstwerk');
+INSERT INTO TempFailureMechanisms VALUES (12, 'Sterkte en stabiliteit puntconstructies');
+INSERT INTO TempFailureMechanisms VALUES (13, 'Macrostabiliteit buitenwaarts');
+INSERT INTO TempFailureMechanisms VALUES (14, 'Microstabiliteit');
+INSERT INTO TempFailureMechanisms VALUES (15, 'Wateroverdruk bij asfaltbekleding');
+INSERT INTO TempFailureMechanisms VALUES (16, 'Grasbekleding afschuiven binnentalud');
+INSERT INTO TempFailureMechanisms VALUES (17, 'Sterkte en stabiliteit langsconstructies');
+INSERT INTO TempFailureMechanisms VALUES (18, 'Technische innovaties');
+
+CREATE TEMP TABLE TempAssessmentSectionFailureMechanism
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName]
+);
+
+INSERT INTO TempAssessmentSectionFailureMechanism
+SELECT
+ [AssessmentSectionEntityId],
+ [Name],
+ [FailureMechanismEntityId],
+ [FailureMechanismName]
+ FROM AssessmentSectionEntity
+ JOIN FailureMechanismEntity USING (AssessmentSectionEntityId)
+ JOIN TempFailureMechanisms USING (FailureMechanismType);
+
+CREATE TEMP TABLE TempChanges
+(
+ AssessmentSectionId,
+ AssessmentSectionName,
+ FailureMechanismId,
+ FailureMechanismName,
+ msg
+);
+
+INSERT INTO TempChanges
+SELECT
+ asfm.[AssessmentSectionId],
+ asfm.[AssessmentSectionName],
+ asfm.[FailureMechanismId],
+ asfm.[FailureMechanismName],
+ "De naam van dijkprofiel '" || source.[Name] || "' is veranderd naar '" || dp.[Id] || "' en wordt ook gebruikt als ID."
+ FROM DikeProfileEntity AS dp
+ JOIN [SOURCEPROJECT].DikeProfileEntity AS source ON dp.[rowid] = source.[rowid]
+ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = dp.[FailureMechanismEntityId]
+ WHERE source.[Name] IS NOT dp.[Id];
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+WITH RECURSIVE
+FailureMechanismMessages
+(
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ [level]
+) AS (
+SELECT DISTINCT
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ NULL,
+ 1
+ FROM TempChanges
+ UNION
+SELECT [FailureMechanismId],
+ NULL,
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [msg],
+ 2
+ FROM TempChanges
+ WHERE TempChanges.[FailureMechanismId] IS [FailureMechanismId]
+ ORDER BY 1, 3
+),
+AssessmentSectionFailureMechanismMessages
+(
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ [FailureMechanismId],
+ [FailureMechanismName],
+ [msg],
+ [level]
+) AS (
+SELECT DISTINCT
+ [AssessmentSectionId],
+ [AssessmentSectionName],
+ NULL,
+ NULL,
+ NULL,
+ 0
+ FROM FailureMechanismMessages
+ WHERE [AssessmentSectionId] IS NOT NULL
+ UNION
+SELECT
+ [AssessmentSectionId],
+ NULL,
+ fmm.[FailureMechanismId],
+ fmm.[FailureMechanismName],
+ [msg],
+ fmm.[level]
+ FROM FailureMechanismMessages AS fmm
+ WHERE fmm.[AssessmentSectionId] IS [AssessmentSectionId]
+ ORDER BY 1, 3, 6
+)
+SELECT
+ "5",
+ "17.1",
+ CASE WHEN [AssessmentSectionName] IS NOT NULL
+ THEN "* Traject: '" || [AssessmentSectionName] || "'"
+ ELSE
+ CASE WHEN [FailureMechanismName] IS NOT NULL
+ THEN " + Toetsspoor: '" || [FailureMechanismName] || "'"
+ ELSE
+ " - " || [msg]
+ END
+ END
+FROM AssessmentSectionFailureMechanismMessages;
+
+DROP TABLE TempFailureMechanisms;
+DROP TABLE TempAssessmentSectionFailureMechanism;
+DROP TABLE TempChanges;
+
+INSERT INTO [LOGDATABASE].MigrationLogEntity (
+ [FromVersion],
+ [ToVersion],
+ [LogMessage])
+SELECT "5",
+ "17.1",
+ "* Geen aanpassingen."
+ WHERE (
+ SELECT COUNT() FROM [LOGDATABASE].MigrationLogEntity
+ WHERE [FromVersion] = "5"
+ ) IS 1;
+
+DETACH LOGDATABASE;
+
+DETACH SOURCEPROJECT;
+
+PRAGMA foreign_keys = ON;
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogDatabaseReader.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogDatabaseReader.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogDatabaseReader.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,116 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Data;
+using System.Data.SQLite;
+using Core.Common.Base.IO;
+using Core.Common.IO.Readers;
+using Riskeer.Migration.Core.Properties;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// This class reads an SqLite database file and constructs
+ /// instances from this database.
+ ///
+ public class MigrationLogDatabaseReader : SqLiteDatabaseReaderBase
+ {
+ ///
+ /// Creates a new instance of that will use the
+ /// as its source.
+ ///
+ /// The path of the database file to open.
+ /// Thrown when:
+ ///
+ /// - The contains invalid characters.
+ /// - No file was found at .
+ /// - Unable to open the database file.
+ /// - The database contains invalid data.
+ ///
+ ///
+ public MigrationLogDatabaseReader(string databaseFilePath) : base(databaseFilePath) {}
+
+ ///
+ /// Gets the migration log messages from the database.
+ ///
+ /// The read log messages.
+ /// Thrown when trying to get the migration
+ /// messages failed.
+ public ReadOnlyCollection GetMigrationLogMessages()
+ {
+ string query = "SELECT " +
+ $"{MigrationLogEntityTableDefinitions.FromVersion}, " +
+ $"{MigrationLogEntityTableDefinitions.ToVersion}, " +
+ $"{MigrationLogEntityTableDefinitions.LogMessage} " +
+ $"FROM {MigrationLogEntityTableDefinitions.TableName}";
+
+ try
+ {
+ using (IDataReader dataReader = CreateDataReader(query))
+ {
+ return ReadMigrationLogMessages(dataReader).AsReadOnly();
+ }
+ }
+ catch (SystemException e) when (e is ArgumentException || e is SQLiteException)
+ {
+ string message = Resources.MigrationLogDatabaseReader_GetMigrationLogMessages_failed;
+ throw new CriticalFileReadException(message, e);
+ }
+ }
+
+ ///
+ /// Reads and returns the log messages from the .
+ ///
+ /// The that is used to read the log
+ /// messages from.
+ /// The read log messages.
+ /// Thrown when the read data is null or empty.
+ private static List ReadMigrationLogMessages(IDataReader dataReader)
+ {
+ var messages = new List();
+
+ while (dataReader.Read())
+ {
+ string fromVersion = ReadStringOrNull(dataReader, MigrationLogEntityTableDefinitions.FromVersion);
+ string toVersion = ReadStringOrNull(dataReader, MigrationLogEntityTableDefinitions.ToVersion);
+ string message = ReadStringOrNull(dataReader, MigrationLogEntityTableDefinitions.LogMessage);
+
+ messages.Add(new MigrationLogMessage(fromVersion, toVersion, message));
+ }
+
+ return messages;
+ }
+
+ private static string ReadStringOrNull(IDataReader dataReader, string columnName)
+ {
+ object valueObject = dataReader[columnName];
+ if (valueObject.Equals(DBNull.Value))
+ {
+ return null;
+ }
+
+ return (string) valueObject;
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogEntityTableDefinitions.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogEntityTableDefinitions.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogEntityTableDefinitions.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,50 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Defines the table and column names of the table 'MigrationLogEntity' in the Ringtoets
+ /// migration log database.
+ ///
+ internal static class MigrationLogEntityTableDefinitions
+ {
+ ///
+ /// The name of the table.
+ ///
+ internal const string TableName = "MigrationLogEntity";
+
+ ///
+ /// The name of the 'migrated from version' column.
+ ///
+ internal const string FromVersion = "FromVersion";
+
+ ///
+ /// The name of the 'migrated to version' column.
+ ///
+ internal const string ToVersion = "ToVersion";
+
+ ///
+ /// The name of the 'message during migration' column.
+ ///
+ internal const string LogMessage = "LogMessage";
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogMessage.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogMessage.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/MigrationLogMessage.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,79 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that provides properties for logging messages that occurred during migration.
+ ///
+ public class MigrationLogMessage
+ {
+ ///
+ /// Creates a new instance of .
+ ///
+ /// The version migrated from.
+ /// The version migrated to.
+ /// The message during the migration.
+ /// Throws when any of the input parameters is
+ /// null or empty.
+ public MigrationLogMessage(string fromVersion, string toVersion, string message)
+ {
+ if (string.IsNullOrEmpty(fromVersion))
+ {
+ throw new ArgumentException($@"Parameter '{nameof(fromVersion)}' must contain a value",
+ nameof(fromVersion));
+ }
+
+ if (string.IsNullOrEmpty(toVersion))
+ {
+ throw new ArgumentException($@"Parameter '{nameof(toVersion)}' must contain a value",
+ nameof(toVersion));
+ }
+
+ if (string.IsNullOrEmpty(message))
+ {
+ throw new ArgumentException($@"Parameter '{nameof(message)}' must contain a value",
+ nameof(message));
+ }
+
+ FromVersion = fromVersion;
+ ToVersion = toVersion;
+ Message = message;
+ }
+
+ ///
+ /// Gets the version that was migrated from.
+ ///
+ public string FromVersion { get; }
+
+ ///
+ /// Gets the version that was migrated to.
+ ///
+ public string ToVersion { get; }
+
+ ///
+ /// Gets the message occurred during the migration.
+ ///
+ public string Message { get; }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/AssemblyInfo.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/AssemblyInfo.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/AssemblyInfo.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,25 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System.Reflection;
+
+[assembly: AssemblyTitle("Riskeer.Migration.Core")]
+[assembly: AssemblyProduct("Riskeer.Migration.Core")]
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/Resources.Designer.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/Resources.Designer.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/Resources.Designer.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,129 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace Riskeer.Migration.Core.Properties {
+ using System;
+
+
+ ///
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ ///
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ public class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Returns the cached ResourceManager instance used by this class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Riskeer.Migration.Core.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Bronprojectpad moet een geldig bestandspad zijn..
+ ///
+ public static string CommandSupported_Source_Not_Valid_Path {
+ get {
+ return ResourceManager.GetString("CommandSupported_Source_Not_Valid_Path", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Kritieke fout opgetreden bij het uitlezen van het Ringtoets logbestand van de migratie..
+ ///
+ public static string MigrationLogDatabaseReader_GetMigrationLogMessages_failed {
+ get {
+ return ResourceManager.GetString("MigrationLogDatabaseReader_GetMigrationLogMessages_failed", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Het aanmaken van het Ringtoets projectbestand met versie '{0}' is mislukt..
+ ///
+ public static string RingtoetsCreateScript_Creating_Version_0_Failed {
+ get {
+ return ResourceManager.GetString("RingtoetsCreateScript_Creating_Version_0_Failed", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Het bestand '{0}' moet een geldig Ringtoets projectbestand zijn..
+ ///
+ public static string RingtoetsDatabaseSourceFile_Invalid_Ringtoets_File_Path_0 {
+ get {
+ return ResourceManager.GetString("RingtoetsDatabaseSourceFile_Invalid_Ringtoets_File_Path_0", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Het migreren van het Ringtoets projectbestand van versie '{0}' naar '{1}' is mislukt..
+ ///
+ public static string RingtoetsUpgradeScript_Upgrading_Version_0_To_Version_1_Failed {
+ get {
+ return ResourceManager.GetString("RingtoetsUpgradeScript_Upgrading_Version_0_To_Version_1_Failed", resourceCulture);
+ }
+ }
+ }
+}
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/Resources.resx
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/Resources.resx (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/Properties/Resources.resx (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,135 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Het bestand '{0}' moet een geldig Ringtoets projectbestand zijn.
+
+
+ Het aanmaken van het Ringtoets projectbestand met versie '{0}' is mislukt.
+
+
+ Het migreren van het Ringtoets projectbestand van versie '{0}' naar '{1}' is mislukt.
+
+
+ Bronprojectpad moet een geldig bestandspad zijn.
+
+
+ Kritieke fout opgetreden bij het uitlezen van het Ringtoets logbestand van de migratie.
+
+
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsCreateScript.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsCreateScript.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsCreateScript.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,79 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Data.SQLite;
+using Migration.Scripts.Data;
+using Migration.Scripts.Data.Exceptions;
+using Ringtoets.Common.Util;
+using Riskeer.Migration.Core.Properties;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that provides methods for creating a for a specific version.
+ ///
+ public class RingtoetsCreateScript : CreateScript
+ {
+ private readonly string createQuery;
+
+ ///
+ /// Creates a new instance of the class.
+ ///
+ /// The version was designed for.
+ /// The SQL query that belongs to .
+ /// Thrown when:
+ ///
+ /// - is not a valid Ringtoets database version,
+ /// - is empty, null, or consist out of only whitespace characters.
+ ///
+ public RingtoetsCreateScript(string version, string query) : base(version)
+ {
+ RingtoetsVersionHelper.ValidateVersion(version);
+
+ if (string.IsNullOrWhiteSpace(query))
+ {
+ throw new ArgumentException(@"Query must have a value.", nameof(query));
+ }
+
+ createQuery = query;
+ }
+
+ protected override IVersionedFile GetEmptyVersionedFile(string location)
+ {
+ try
+ {
+ using (var databaseFile = new RingtoetsDatabaseFile(location))
+ {
+ databaseFile.OpenDatabaseConnection();
+ databaseFile.ExecuteQuery(createQuery);
+ }
+
+ return new RingtoetsVersionedFile(location);
+ }
+ catch (SQLiteException exception)
+ {
+ throw new CriticalMigrationException(string.Format(Resources.RingtoetsCreateScript_Creating_Version_0_Failed,
+ GetVersion()), exception);
+ }
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseFile.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseFile.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseFile.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,111 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Data.SQLite;
+using Core.Common.IO;
+using Core.Common.Util;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that provides methods for the migration of a Ringtoets database target file.
+ ///
+ public class RingtoetsDatabaseFile : IDisposable
+ {
+ private readonly string filePath;
+ private SQLiteConnection connection;
+ private bool disposed;
+
+ ///
+ /// Creates a new instance of the class.
+ ///
+ /// The path to the target file.
+ /// Thrown when :
+ ///
+ /// - is not empty or null,
+ /// - does not consist out of only whitespace characters,
+ /// - does not contain an invalid character,
+ /// - does not end with a directory or path separator (empty file name),
+ /// - is not writable.
+ ///
+ /// Creates the file if it does not exist.
+ public RingtoetsDatabaseFile(string path)
+ {
+ IOUtils.CreateFileIfNotExists(path);
+ filePath = path;
+ }
+
+ ///
+ /// Opens the connection to the Ringtoets database file.
+ ///
+ public void OpenDatabaseConnection()
+ {
+ connection = new SQLiteConnection(SqLiteConnectionStringBuilder.BuildSqLiteConnectionString(filePath, false));
+ connection.Open();
+ }
+
+ ///
+ /// Executes the on the Ringtoets database file.
+ ///
+ /// Create structure query to execute.
+ /// Thrown when is null
+ /// or consist out of only whitespace characters.
+ /// Thrown when executing failed.
+ public void ExecuteQuery(string query)
+ {
+ if (string.IsNullOrWhiteSpace(query))
+ {
+ throw new ArgumentException(@"Parameter must be a valid database script.", nameof(query));
+ }
+
+ using (var command = new SQLiteCommand(connection)
+ {
+ CommandText = query
+ })
+ {
+ command.ExecuteNonQuery();
+ }
+ }
+
+ public void Dispose()
+ {
+ Dispose(true);
+ GC.SuppressFinalize(this);
+ }
+
+ protected virtual void Dispose(bool disposing)
+ {
+ if (disposed)
+ {
+ return;
+ }
+
+ if (disposing)
+ {
+ connection?.Dispose();
+ connection = null;
+ }
+
+ disposed = true;
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseQueryBuilder.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseQueryBuilder.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseQueryBuilder.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,41 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Defines queries to execute on a Ringtoets database.
+ ///
+ public static class RingtoetsDatabaseQueryBuilder
+ {
+ ///
+ /// Returns the query to get the version from the Ringtoets database.
+ ///
+ /// The query to get the version from the Ringtoets database.
+ public static string GetVersionQuery()
+ {
+ return $"SELECT {VersionTableDefinitions.Version} "
+ + $"FROM {VersionTableDefinitions.TableName} "
+ + $"Order by {VersionTableDefinitions.Timestamp} DESC "
+ + "LIMIT 1";
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseSourceFile.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseSourceFile.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsDatabaseSourceFile.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,77 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Data;
+using Core.Common.Base.IO;
+using Core.Common.Base.Storage;
+using Core.Common.IO.Readers;
+using Riskeer.Migration.Core.Properties;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that provides methods for the migration database source file.
+ ///
+ public class RingtoetsDatabaseSourceFile : SqLiteDatabaseReaderBase
+ {
+ ///
+ /// Creates a new instance of the class.
+ ///
+ /// The path to the source file.
+ /// Thrown when:
+ ///
+ /// - The contains invalid characters.
+ /// - No file could be found at .
+ /// - Unable to open database file.
+ ///
+ ///
+ public RingtoetsDatabaseSourceFile(string databaseFilePath) : base(databaseFilePath) {}
+
+ ///
+ /// Gets the version of the Ringtoets database source file at location .
+ ///
+ /// The version of the file.
+ /// Thrown when the file is not a valid
+ /// Ringtoets database source file.
+ public string GetVersion()
+ {
+ string versionQuery = RingtoetsDatabaseQueryBuilder.GetVersionQuery();
+ try
+ {
+ using (IDataReader dataReader = CreateDataReader(versionQuery, null))
+ {
+ if (!dataReader.Read())
+ {
+ return string.Empty;
+ }
+
+ return dataReader.Read(VersionTableDefinitions.Version);
+ }
+ }
+ catch (SystemException exception)
+ {
+ throw new StorageValidationException(string.Format(Resources.RingtoetsDatabaseSourceFile_Invalid_Ringtoets_File_Path_0,
+ Path), exception);
+ }
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsSqLiteDatabaseFileMigrator.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsSqLiteDatabaseFileMigrator.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsSqLiteDatabaseFileMigrator.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,123 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using System.Text.RegularExpressions;
+using Migration.Core.Storage;
+using Migration.Scripts.Data;
+using Ringtoets.Common.Util;
+using Riskeer.Migration.Core.Properties;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that provides methods for migrating a .
+ ///
+ public class RingtoetsSqLiteDatabaseFileMigrator : VersionedFileMigrator
+ {
+ private readonly Assembly scriptResource;
+
+ ///
+ /// Creates a new instance of the class.
+ ///
+ public RingtoetsSqLiteDatabaseFileMigrator() : base(new RingtoetsVersionComparer())
+ {
+ scriptResource = typeof(Resources).Assembly;
+ }
+
+ ///
+ /// Gets or sets the path to the logging database.
+ ///
+ public string LogPath { private get; set; }
+
+ private static string GetStringOfStream(Stream stream)
+ {
+ using (var reader = new StreamReader(stream))
+ {
+ return reader.ReadToEnd();
+ }
+ }
+
+ #region UpgradeScript
+
+ protected override IEnumerable GetAvailableUpgradeScripts()
+ {
+ return scriptResource.GetManifestResourceNames()
+ .Where(r => r.Contains("Migration_"))
+ .Select(CreateNewUpgradeScript)
+ .ToArray();
+ }
+
+ private static string GetMigrationScriptFromVersion(string filename)
+ {
+ Match match = Regex.Match(filename, @"(Migration_)(.*)(_.*\.sql)$", RegexOptions.IgnoreCase);
+ return match.Success ? match.Groups[2].Value : null;
+ }
+
+ private static string GetMigrationScriptToVersion(string filename)
+ {
+ Match match = Regex.Match(filename, @"(Migration_.*_)(.*)(\.sql)$", RegexOptions.IgnoreCase);
+ return match.Success ? match.Groups[2].Value : null;
+ }
+
+ private UpgradeScript CreateNewUpgradeScript(string resourceName)
+ {
+ string fromVersion = GetMigrationScriptFromVersion(resourceName);
+ string toVersion = GetMigrationScriptToVersion(resourceName);
+ Stream upgradeStream = scriptResource.GetManifestResourceStream(resourceName);
+
+ string upgradeQuery = GetStringOfStream(upgradeStream);
+
+ return new RingtoetsUpgradeScript(fromVersion, toVersion, upgradeQuery, LogPath);
+ }
+
+ #endregion
+
+ #region CreateScript
+
+ protected override IEnumerable GetAvailableCreateScripts()
+ {
+ return scriptResource.GetManifestResourceNames()
+ .Where(r => r.Contains("DatabaseStructure"))
+ .Select(CreateNewCreateScript)
+ .ToArray();
+ }
+
+ private static string GetCreateScriptVersion(string filename)
+ {
+ Match match = Regex.Match(filename, @"(DatabaseStructure)(.*)(\.sql)$", RegexOptions.IgnoreCase);
+ return match.Success ? match.Groups[2].Value : null;
+ }
+
+ private RingtoetsCreateScript CreateNewCreateScript(string resourceName)
+ {
+ string version = GetCreateScriptVersion(resourceName);
+ Stream createStream = scriptResource.GetManifestResourceStream(resourceName);
+ string query = GetStringOfStream(createStream);
+ return new RingtoetsCreateScript(version, query);
+ }
+
+ #endregion
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsUpgradeScript.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsUpgradeScript.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsUpgradeScript.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,85 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Data.SQLite;
+using Migration.Scripts.Data;
+using Migration.Scripts.Data.Exceptions;
+using Ringtoets.Common.Util;
+using Riskeer.Migration.Core.Properties;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that provides methods for the upgrading a for a specific version.
+ ///
+ public class RingtoetsUpgradeScript : UpgradeScript
+ {
+ private readonly string upgradeQuery;
+ private readonly string logDatabaseLocation;
+
+ ///
+ /// Creates a new instance of the class.
+ ///
+ /// The source version was designed for.
+ /// The target version was designed for.
+ /// The SQL query to upgrade from to .
+ /// The location to the log database.
+ /// Thrown when:
+ ///
+ /// - is not a valid Ringtoets database version,
+ /// - is not a valid Ringtoets database version,
+ /// - is empty, null, or consists out of only whitespace characters.
+ ///
+ public RingtoetsUpgradeScript(string fromVersion, string toVersion, string query, string logDatabaseLocation)
+ : base(fromVersion, toVersion)
+ {
+ if (string.IsNullOrWhiteSpace(query))
+ {
+ throw new ArgumentException(@"Query must have a value.", nameof(query));
+ }
+
+ RingtoetsVersionHelper.ValidateVersion(fromVersion);
+ RingtoetsVersionHelper.ValidateVersion(toVersion);
+
+ upgradeQuery = query;
+ this.logDatabaseLocation = logDatabaseLocation;
+ }
+
+ protected override void PerformUpgrade(string sourceLocation, string targetLocation)
+ {
+ try
+ {
+ string query = string.Format(upgradeQuery, sourceLocation, logDatabaseLocation);
+ using (var databaseFile = new RingtoetsDatabaseFile(targetLocation))
+ {
+ databaseFile.OpenDatabaseConnection();
+ databaseFile.ExecuteQuery(query);
+ }
+ }
+ catch (SQLiteException exception)
+ {
+ throw new CriticalMigrationException(string.Format(Resources.RingtoetsUpgradeScript_Upgrading_Version_0_To_Version_1_Failed,
+ FromVersion(), ToVersion()), exception);
+ }
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsVersionedFile.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsVersionedFile.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/RingtoetsVersionedFile.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,61 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using Core.Common.Util;
+using Migration.Scripts.Data;
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Class that defines a Ringtoets database file that has a version.
+ ///
+ public class RingtoetsVersionedFile : IVersionedFile
+ {
+ ///
+ /// Creates a new instance of the class.
+ ///
+ /// Path to the Ringtoets versioned file.
+ /// Thrown when is invalid.
+ /// A valid path:
+ ///
+ /// - is not empty or null,
+ /// - does not consist out of only whitespace characters,
+ /// - does not contain an invalid character,
+ /// - does not end with a directory or path separator (empty file name).
+ ///
+ public RingtoetsVersionedFile(string path)
+ {
+ IOUtils.ValidateFilePath(path);
+ Location = path;
+ }
+
+ public string Location { get; }
+
+ public string GetVersion()
+ {
+ using (var sourceFile = new RingtoetsDatabaseSourceFile(Location))
+ {
+ return sourceFile.GetVersion();
+ }
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/Riskeer.Migration.Core.csproj
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/Riskeer.Migration.Core.csproj (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/Riskeer.Migration.Core.csproj (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,119 @@
+
+
+
+ {FAC55B92-E259-43D6-B9A1-5BDA6C834359}
+ Riskeer.Migration.Core
+ Riskeer.Migration.Core
+
+
+
+
+
+
+
+ ..\..\..\..\packages\System.Data.SQLite.Core.1.0.106.0\lib\net40\System.Data.SQLite.dll
+ True
+
+
+
+
+
+
+
+
+ True
+ True
+ Resources.resx
+
+
+
+
+
+
+
+
+
+
+
+
+ Copying.licenseheader
+
+
+
+
+
+ {3BBFD65B-B277-4E50-AE6D-BD24C3434609}
+ Core.Common.Base
+ False
+
+
+ {e344867e-9ac9-44c8-88a5-8185681679a9}
+ Core.Common.IO
+ False
+
+
+ {f49bd8b2-332a-4c91-a196-8cce0a2c7d98}
+ Core.Common.Util
+ False
+
+
+ {EFD7E662-5B69-4B71-A448-565B64E9C033}
+ Migration.Core.Storage
+ False
+
+
+ {D08DB9E2-6861-44C8-A725-71A70274CC77}
+ Migration.Scripts.Data
+ False
+
+
+ {6A074D65-A81C-4C1C-8E24-F36C916E4ED7}
+ Ringtoets.Common.Util
+ False
+
+
+
+
+ PublicResXFileCodeGenerator
+ Resources.Designer.cs
+ Designer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
+
+
+
+
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/VersionTableDefinitions.cs
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/VersionTableDefinitions.cs (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/VersionTableDefinitions.cs (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,44 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+namespace Riskeer.Migration.Core
+{
+ ///
+ /// Defines the table and column names of the table 'VersionEntity' in the Ringtoets database.
+ ///
+ public static class VersionTableDefinitions
+ {
+ ///
+ /// Gets the name of the table.
+ ///
+ public const string TableName = "VersionEntity";
+
+ ///
+ /// Gets the name of the version column.
+ ///
+ public const string Version = "Version";
+
+ ///
+ /// Gets the name of the timestamp column.
+ ///
+ public const string Timestamp = "Timestamp";
+ }
+}
\ No newline at end of file
Index: Ringtoets/Migration/src/Riskeer.Migration.Core/packages.config
===================================================================
diff -u
--- Ringtoets/Migration/src/Riskeer.Migration.Core/packages.config (revision 0)
+++ Ringtoets/Migration/src/Riskeer.Migration.Core/packages.config (revision eb0ce91f3f0fb3c543ef2b1875e5ad9e6356fa08)
@@ -0,0 +1,25 @@
+
+
+
+
\ No newline at end of file