Index: Ringtoets/Common/src/Ringtoets.Common.IO/HydraRing/HydraRingSettingsDatabaseReader.cs =================================================================== diff -u -r76e7f2d96ecaa823b6ef4f63bd5faef63886a0d5 -r6d91aa930b2925289735817e280a54839469c373 --- Ringtoets/Common/src/Ringtoets.Common.IO/HydraRing/HydraRingSettingsDatabaseReader.cs (.../HydraRingSettingsDatabaseReader.cs) (revision 76e7f2d96ecaa823b6ef4f63bd5faef63886a0d5) +++ Ringtoets/Common/src/Ringtoets.Common.IO/HydraRing/HydraRingSettingsDatabaseReader.cs (.../HydraRingSettingsDatabaseReader.cs) (revision 6d91aa930b2925289735817e280a54839469c373) @@ -120,8 +120,6 @@ $"WHERE LocationID = {locationIdParameterName}"; excludedPreprocessorLocationsQuery = $"SELECT {locationIdColumn} FROM ExcludedLocationsPreprocessor"; - - ValidateSchema(); } /// @@ -318,25 +316,6 @@ } } - /// - /// Verifies that the schema of the opened settings database is valid. - /// - /// Thrown when the - /// opened database doesn't have the expected schema. - private void ValidateSchema() - { - if (!ContainsRequiredTables(GetColumnDefinitions(Connection))) - { - CloseConnection(); - throw new CriticalFileReadException(Resources.HydraRingSettingsDatabase_Hydraulic_calculation_settings_database_has_invalid_schema); - } - } - - private bool ContainsRequiredTables(List> definitions) - { - return GetValidSchema().All(definitions.Contains); - } - private IDataReader CreateDesignTablesDataReader(long locationId, HydraRingFailureMechanismType calculationType) { var locationParameter = new SQLiteParameter @@ -434,34 +413,5 @@ { return CreateDataReader(excludedPreprocessorLocationsQuery); } - - private List> GetValidSchema() - { - using (var validSchemaConnection = new SQLiteConnection("Data Source=:memory:")) - using (SQLiteCommand command = validSchemaConnection.CreateCommand()) - { - validSchemaConnection.Open(); - command.CommandText = Resources.settings_schema; - command.ExecuteNonQuery(); - return GetColumnDefinitions(validSchemaConnection); - } - } - - private static List> GetColumnDefinitions(SQLiteConnection connection) - { - DataTable columns = connection.GetSchema("COLUMNS"); - - var definitions = new List>(); - for (var i = 0; i < columns.Rows.Count; i++) - { - DataRow dataRow = columns.Rows[i]; - definitions.Add( - Tuple.Create( - ((string) dataRow["TABLE_NAME"]).ToLower(), - ((string) dataRow["COLUMN_NAME"]).ToLower() - )); - } - return definitions; - } } } \ No newline at end of file