diff --git a/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql b/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql
index c1732c9e94860337218e6af917b1b523980a3d63..6f0380aee596bad76cb9a4ce6cf1f35eefcaf9bf 100644
--- a/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql
+++ b/src/main/resources/db/migration/V7_0__NewDatabaseStructure.sql
@@ -1,8 +1,3 @@
-UPDATE experiment
-SET algorithms =
-    (
-        SELECT SUBSTR(algorithms, 2, LENGTH(algorithms) - 2)
-    );
 
 UPDATE experiment
 SET workflowstatus = 'error'
@@ -26,10 +21,12 @@ DROP COLUMN hasservererror,
 DROP COLUMN validations,
 DROP COLUMN model_slug;
 
-ALTER TABLE experiment
-RENAME algorithms TO algorithm;
-ALTER TABLE experiment
-ALTER COLUMN algorithm TYPE json USING algorithm::json;
+ALTER TABLE experiment RENAME algorithms TO algorithm;
+UPDATE experiment SET algorithm = (algorithm::json ->> 0);
+UPDATE experiment SET algorithmId = (algorithm::json ->> 'name');
+ALTER TABLE experiment ADD COLUMN algorithmId text;
+UPDATE experiment SET result = result::json #>>'{0,result}' WHERE (algorithm::json->>'type') <> 'workflow';
+
 ALTER TABLE experiment
 RENAME createdby_username TO created_by_username;
 ALTER TABLE experiment
@@ -39,14 +36,6 @@ RENAME resultsviewed TO viewed;
 ALTER TABLE experiment
 RENAME workflowstatus TO status;
 
-ALTER TABLE experiment
-ADD COLUMN algorithmId text;
-
-UPDATE experiment
-SET algorithmId = (algorithm ->> 'name');
-
-ALTER TABLE experiment
-ALTER COLUMN algorithm TYPE text;
 ALTER TABLE experiment
 ADD COLUMN updated timestamp without time zone;